Xcode 中架构 arm64 的未定义符号
Undefined symbols for architecture arm64 in Xcode
我有一个框架 Xcode 项目 A 和一个使用 A 的框架二进制文件的应用程序 Xcode 项目 B。
当我尝试在我的应用程序中实例化我的框架对象时,它给我这个 link 错误:
Undefined symbols for architecture arm64:
"_OBJC_CLASS_$_MyClass", referenced from:
objc-class-ref in ViewController.o
ld: symbol(s) not found for architecture arm64
我的框架是arm64
,我用lipo -info
验证过。
符号_OBJC_CLASS_$_MyClass
在框架中,我用nm mylib | grep MyClass
验证
我不明白为什么找不到这个符号。
这可能是什么原因造成的?任何帮助将不胜感激,非常感谢..
我通过在构建设置中将 Symbols Hidden by Default
设置为 No
解决了我的问题。
或者,如果我想保留该选项并隐藏所有其他符号,我也可以在 class 前面添加 __attribute__ ((visibility("default")))
。
我有一个框架 Xcode 项目 A 和一个使用 A 的框架二进制文件的应用程序 Xcode 项目 B。
当我尝试在我的应用程序中实例化我的框架对象时,它给我这个 link 错误:
Undefined symbols for architecture arm64:
"_OBJC_CLASS_$_MyClass", referenced from:
objc-class-ref in ViewController.o
ld: symbol(s) not found for architecture arm64
我的框架是arm64
,我用lipo -info
验证过。
符号_OBJC_CLASS_$_MyClass
在框架中,我用nm mylib | grep MyClass
我不明白为什么找不到这个符号。
这可能是什么原因造成的?任何帮助将不胜感激,非常感谢..
我通过在构建设置中将 Symbols Hidden by Default
设置为 No
解决了我的问题。
或者,如果我想保留该选项并隐藏所有其他符号,我也可以在 class 前面添加 __attribute__ ((visibility("default")))
。