我正在Xcode上开发一个cocos2d-x项目。我创建了一个场景,我遇到了这个错误:
Undefined symbols for architecture x86_64:
"MainScene::scene()", referenced from:
Splash::finishSplash(float) in Splash.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
我已经搜索了很长一段时间,看到了很多解决方案。但我仍然对错误感到困惑。有时我遇到x86_64
错误,有时会遇到i386
错误。我是iOS开发的新手。那么我该如何解决这个问题呢?
我试过以下,但错误仍然存在:
i386
arm64
和Valid Architectures
Header Search Paths
Linked Frameworks and libraries
我正在使用cocos2d-x 2.2.6 cpp。 Xcode版本6.3.2(6D2105)。我使用python脚本来创建这个iOS项目。
答案 0 :(得分:1)
我有类似的问题。我使用以下配置(在cocos2d-x 3.x上,但在2.x上应该相同):
在根项目上:
仅构建活动架构 - 是(调试),否(释放)。 有效架构:armv7,armv7s,i386,x86_64,arm64。
在cocos2d_libs项目中:
构建活动架构号 有效架构:armv7,armv7s,i386,x86_64,arm64。
您还应该更新到最新的Xcode(可能不太可能将Xcode 6.x上的应用程序发送到应用程序商店)和cocos2d-x(它比2.x更容易)。< / p>
答案 1 :(得分:0)
这是64位错误 Cocos2d-x2.2.6具有64位支持,因此您不应从架构中删除arm64。
或者请提交更多代码/日志,以便我们更好地帮助您。