Xcode 升級(jí)到Version 11.4 (11E146)版本后,部分不支持模擬器的SDK在編譯時(shí)報(bào)錯(cuò):
Building for UIKit for Mac, but the linked framework 'XXX.framework' was built for macOS
經(jīng)過嘗試解決問題笼痹,然后總結(jié)出有2種解決方案。
1.修改當(dāng)前工程的File -> Workspaces Setting酪穿,可以將工程的Build System修改成Legacy Build System凳干。編譯可以編譯成功。(如果修改到Legacy Build System有報(bào)錯(cuò)被济,可以查看Legacy Build System下報(bào)錯(cuò)救赐,可以逐一解決)。
2.若使用New Build System的只磷,可以去Build Settings中搜索EXCLUDED_SOURCE_FILE_NAMES经磅,添加Debug模式下,用模擬器編譯下忽略的文件钮追。
3.工程中引用不支持模擬器編譯庫的時(shí)候预厌,也需要區(qū)分是不是模擬器區(qū)分引用。
#if !targetEnvironment(simulator)
// .....
#endif
最后附上官方類似問題解決方案:Apple Developer Forums