zoukankan      html  css  js  c++  java
  • Xcode Undefined symbols for architecture x86_64: 解决方案

    写了一个功能有混编C++实现, 编译的时候一直报错。Undefined symbol: ___gxx_personality_v0

    这里记录一下搜索到有解决fix的方案-。-

    • 1.xcode needs to be configured in compiling process. in build setting /other linker flags -lc++

    buildSetting -->other linker flags-->添加-lc++

    • 2.target->Build Phases->Link Binary with Libraries 添加 libc++.tbd 库函数 libc++是Xcode的c++函数库

      我印象中混编是这么解决的。

    • 3.接下来是我遇见的问题了...不知道你们的环境是不是跟我一样..

      xcode 12, MacOS 10.15.

      问题描述:

      新建工程,实现OC 和C++混编,编写的功能可以正常build和实现。然后将代码添加到我需要导入的项目中后,发现一直build 报错 如标题。

      本着唯物的原则,凭什么新的工程可以,同样的东西导入工程后就不行,最后发现问题竟然是...

      好吧,没有发现原因~。~

      解决方案:

      依旧是需要导入libc++库,libc++.tbd和libc++.1.tbd其实是同一个东西,libc++.tbd是一个 link 指向libc++.1.tbd

      按照解决方案,应该是把libc++.tbd导入到link binary那边,但是导入没有效果,于是尝试导入这个原文件libc++.1.tbd

      可以build了,混编实现的功能也都正常,傻眼. 就这么解决了...

    Knowledge, like candlelight, can illuminate a person and countless people.
  • 相关阅读:
    8.5 exit函数进程控制
    8.2 进程标识
    8.6 wait和waitpid函数进程控制
    2.jpg
    8.3 fork函数进程控制
    8.4 vfork函数进程控制
    8.9 竞态条件
    8.8 wait3和wait4函数进程控制
    8.7 waitid函数进程控制
    Silverlight Tools 3.0中文正式版发布(附下载地址)
  • 原文地址:https://www.cnblogs.com/xiaoqiangink/p/14708421.html
Copyright © 2011-2022 走看看