2010-01-29 26 views
6

我想編譯一些C++代碼作爲靜態庫在iPhone上使用。如果我爲模擬器編譯東西(i386架構),所有東西都編譯成桃色,但是當我將架構切換到arm時,我看到所有這些包含錯誤,看起來在iPhone SDK STL頭文件中。任何想法發生了什麼?C++編譯爲iPhone(STL問題?)

首先是錯誤的:

/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/usr/include/c++/4.2.1/string:45:0 Bits/c++config.h: No such file or directory in 
/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/usr/include/c++/4.2.1/string 
+0

這是使用iPhone 3.2 SDK Beta btw。如果我選擇目標作爲設備3.2,它似乎工作,但所有較低的操作系統版本給我這些錯誤。 – toastie 2010-01-29 06:15:02

回答

10

添加/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/usr/include/c++/4.2.1/armv6-apple-darwin9/爲包括路徑。

此外,請向Apple提交錯誤。

+0

文件錯誤+1 :) – 2010-02-01 18:36:43

+0

添加此路徑只會修復設備版本。 – zooropa 2010-02-23 22:08:29

7

要解決所有的SDK版本這個bug,添加

$(SDKROOT)/usr/include/c++/4.2.1/armv6-apple-darwin9 

到「頭文件搜索路徑」設置建設(建築不應該的問題,這仍然適用於模擬器對我來說)。

0

沒有armv6-apple-darwin9子目錄