2012-08-22 78 views
3

所以我有一個iPhone靜態庫,我正在嘗試構建。我有這個問題中使用的腳本(http://stackoverflow.com/questions/3520977/build-fat-static-library-device-simulator-using-xcode-and-sdk-4),但是我碰到的問題是,我似乎仍然無法成功構建模擬器的靜態庫。當我建立在靜態庫項目,我得到了如下警告:iPhone模擬器靜態庫問題

warning: no rule to process file '$(PROJECT_DIR)/GDInAppStore/GDInAppStore.m' of type sourcecode.c.objc for architecture i386 
warning: no rule to process file '$(PROJECT_DIR)/GDInAppStore/SKProduct+priceAsString.m' of type sourcecode.c.objc for architecture i386 
warning: no rule to process file '$(PROJECT_DIR)/GDInAppStore/VerificationControllerPBK.m' of type sourcecode.c.objc for architecture i386 

我相信這個問題是造成這是導致通用庫,我從構建腳本導致我的其他項目這個錯誤提示問題

ld: warning: ignoring file /Users/abotkin/Projects/Static Libraries/GDInAppStore/libGDInAppStore.a, missing required architecture i386 in file 
"_OBJC_CLASS_$_GDInAppStore", referenced from: 
objc-class-ref in SubscribeNowInAppController.o 
ld: symbol(s) not found for architecture i386 

我使用的Xcode 4.3.2,並且已經設置靜態庫的Xcode項目的標誌,使i386的被納入架構和有效的架構。有小費嗎?

回答

0

我可以說,他在其他主題中提到這裏https://stackoverflow.com/a/5721978/497718

也就是說,如果任何人都可以點我到做一個變通方法,通過使用卡爾的iOS通用框架這個問題我可能已經做錯了使用在同一主題中的腳本,我很想學習如何以正確的方式做到這一點。

2

如果您正在編譯i386,請確保您正在構建模擬器。基本上,您的拱形參數必須與您的sdk參數相匹配。即

xcodebuild聯編 - 項目proj.xcodeproj -arch armv64 -sdk iphoneos8.1建立

xcodebuild聯編 - 項目proj.xcodeproj -arch i386的-sdk iphonesimulator8.1建立

0

和Xcode 6,Apple已經爲其構建工具添加了iOS框架支持。

對所有新項目使用Apple的框架目標,因爲它不那麼黑澀,並且得到Apple自己的支持。