簡體   English   中英

將iOS部署目標更改為iOS 7.0時Xcode 5的C ++鏈接錯誤

[英]C++ link error with Xcode 5 when changing iOS Deployment Target to iOS 7.0

我已經升級到Xcode 5,並且能夠使用現有設置很好地構建我的項目。

將基本SDK更新到7.0不會引起任何問題。

但是,當我將iOS部署目標更改為iOS 7.0時,我開始收到標准C ++符號的鏈接錯誤。 例如:

Undefined symbols for architecture armv7 std::string::empty() const", referenced from...

我嘗試過的

  • 顯式鏈接標准C ++庫
  • 更改Xcode 5中的“ C ++標准庫”設置。嘗試了libstdc ++,libc ++和“編譯器默認值”

如果將“部署目標”設置為iOS 7.0,則找不到C ++符號;如果將其設置為iOS 6.1,則不會找到C ++符號。

事實證明,如果XCode在項目中找不到任何C ++文件,那么它將假定不需要libstd ++。 因此,您必須手動將C ++文件添加到項目中(一個空的.mm文件就足夠了)。

所有的功勞都歸於這個Stackoverflow線程中的 答案

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM