錯誤信息
項目集成一個SDK后報錯
…………Building for iOS, but the linked and embedded framework ‘xxx.framework’ was built for iOS + iOS Simulator.
報錯原因
- WWDC 2019 推出 XCFramework 啟,其實 XCode 11 開始就會有這個問題,但在 XCode 11 上一直是 warning 也就沒太注意
- XCode12.3 開始,針對類似於 iOS + iOS Simulator 這種多平台的包,強制使用 XCFramework 架構,否則 error
解決方案
修改 Validate WorkSpace 為 YES
路徑 Build Setting > Build Settings > Validate WorkSpace
將Validate WorkSpace
設置為 YES
不建議使用,只能做暫時方案,萬一哪天 Apple 不開心又把 Validate WorkSpace 邏輯改了呢?
修改 Build System 為 Legacy Build System (Deprecated)
路徑 Files > WorkSpace Setting > Build System
設置 Build System
如下
不建議使用,總不能一直使用以前的構建系統吧?以后 WWDC 推出新功能了,還是得用新系統,旁邊蘋果的 Deprecated 注釋也說明了這點
生成 XCFramework (推薦)
參考 ReadMore 中的內容
ReadMore
本文內容搬於
升級XCode12.3報錯 Building for , but the linked and embedded framework was built for iOS + iOS Simulator
Apple XCFramework教程
Apple XCFramework幫助文檔