ios - XCode 未定义引用

标签 ios xcode compiler-errors clang llvm-gcc

我已经使用 llvm-g++-4.2 通过命令行编译了一个静态库。当我尝试链接该库并在 XCode 中构建应用程序时,我得到了以下信息:

Undefined symbols for architecture armv7: (null): "__ZN12NamespaceOne5NamespaceTwo10NamespaceThree11functionEPDv2_x", referenced from: ...

(请注意,我混淆了实际的命名空间和函数名称)

当我使用 nm 查看库时,我看到:
000007cc T __ZN12NamespaceOne5NamespaceTwo10NamespaceThree11functionEPU8__vectorx

该方法已定义,但最终名称略有不同。 XCode(使用 clang++)是否不喜欢我的 llvm-g++-4.2 库?

最佳答案

我猜这个库是 C++ 代码,而您正试图从 Objective-C(或 C)文件中访问它。您需要使用“C++”文件 (xxx.cc) 或 Objective-C++ (xxx.mm) 类为其创建某种缓冲区。

关于ios - XCode 未定义引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16613169/

相关文章:

c++ - 编译错误:boost::promise<T>::set_value(const T&) 不存在

compiler-errors - Lisp 非法函数调用,

ios - 从 viewDidLoad 中调用的函数外部重新加载 UITableViewController

swift - 我这样做正确吗? Swift 3 xcode 从 firebase 加载数据

ios - 应用内购买恢复按钮

iphone - 主 UIView 的 X 和 Y 坐标在界面生成器中不是 0,0

XCode Playground 卡在异步代码上

c# - .NET4.6中DataRow.Item [string]上的CS1061

iOS 证书和配置文件关系

ios - 自动化 wkwebview 双击