Mar*_*ekM 28 xcode libstdc++ ios7
我需要帮助.我有一个使用stdc ++的框架,比如std:string.现在,当我为IOS7创建新的应用程序时,由于stdc ++ lib的问题,链接此框架存在问题:
架构armv7的未定义符号"std :: basic_string,std :: allocator> :: _ Rep :: _ S_empty_rep_storage",引自...
我发现一些奇怪的事情,当我在这个应用程序中将Deplyment目标更改为ios6时,一切正常.使用ios7,我看到错误.
我已经在其他链接器标志中设置了标志:-lstdc ++
知道自己做错了什么吗?
小智 68
说实话,我不喜欢上面的答案,因为它使用静态库而不是动态!
我自己遇到了这个问题,发现问题是xcode无法在你的项目中找到任何C++文件,因此假设不需要libstc ++!
当你链接到使用它的静态库时相当烦人!!
方案:
这对我有用,我没有必要将-lstdc ++添加到Other Linker Flags!
希望能帮助其他人解决同样的问题.
Mar*_*ekM 27
谢谢你的帮助.我找到了解决方案.我在其他链接器标志中使用-lstdc ++标志,但现在还不够.我不得不在BuildPhases-> Link Binary With Libraries中添加"libstdc ++.6.0.9.dylib.在网络信息的某处,xcode有ios7 stdc ++ lib选择的问题,应该手动选择.
此致,马雷克
Dou*_*les 27
只是这个答案的更新:
这一步非常重要!
确保在Apple LLVM 5.0编译器构建设置中将C++标准库设置为libstdc ++(GNU c ++标准库)
背景:
我有一个iOS应用程序突然停止为iOS 7构建标准库链接错误.我一直在模拟器和iPad mini上成功测试应用程序,并将其归档,但是当我添加iPhone 5S进行测试时,我开始收到链接错误(可能是因为混合中的新架构?).
搜索Google上的链接错误,我找到了将libstdc ++.dylib显式添加到链接库的建议.这没用.
我通过将libstdc ++.6.dylib添加到链接库来进行实验; 这消除了链接错误,但应用程序很早就在标准C++库代码中崩溃了.
如上所述,删除库的显式添加和更改Build Settings中的编译器设置可以纠正链接错误和运行时问题.
感谢rimestad的指针!
归档时间: |
|
查看次数: |
28634 次 |
最近记录: |