苹果Mach-O连接器(Id)错误(微信)
问题描述:
我添加了微信登录到我的xcode。但是,这些错误起作用。 我不知道如何解决这个错误。请帮帮我。苹果Mach-O连接器(Id)错误(微信)
Apple Mach-O Linker (Id) Error
"__wechatstore",referenced from:
_Wechat__wechatstore_m13_992 in Bulk_Assembly-CSharp_1.o
_Wechat_wechatstore_m13_995 in Bulk_Assembly-CSharp_1.o
(maybe you meant: _Wechat__wechatstore_m13_992)
Symbol(s) not found for architecture arm64
Linker command failed with exit code 1 (use -v to see invocation)
Activity Log Complete
答
消息意味着符号__wechatstore
(这可能是一个指针,指向数据结构)不能供给到任何连接子二进制arm64
中找到。因此,有几件事情可能会出错:
具有此符号的库可能未包含在编译中。 (在Xcode中构建失败时,转到导航器中的“报告”选项卡,单击失败的内部版本,然后检查失败的“链接...”任务
库可能包含但不能编译为arm64。现在我想到了,我认为这是最有可能的情况。
arm64
支持是苹果公司支持iPad Pro的一项新要求,我敢打赌,该库可能只包含armv7。该架构通过在图书馆运行file
命令包括
一个可能的临时解决方案是停止编译为arm64,并尝试只是编译ARMv7的。要做到这一点去工程中的t>构建设置>体系结构>体系结构,并从$(ARCHS_STANDARD)$(ARCHS_STANDARD)
更改为armv7
。 (nb:idk,但我不会尝试提交没有适当的应用程序架构的二进制文件)
+0
谢谢。但是,这是函数调用的问题。 Unity调用了一个不在xcode中的函数。 –
库是为x86还是ARM编译的?该应用程序似乎是为ARM64设计的。 –
你的意思是x86或ARM龙不应该在库中? –
看来你编译了一个不同的CPU架构库,可能是x86。您需要为ARM64编译它。 –