xcode >= 8 无法编译我的 Objective-C 库
Posted
技术标签:
【中文标题】xcode >= 8 无法编译我的 Objective-C 库【英文标题】:xcode >= 8 cannot compile my objective-c library 【发布时间】:2016-11-08 10:15:37 【问题描述】:我正在尝试使用 Xcode(或 xcodebuild)编译我的 Objective-C 库,但似乎 Xcode 只使用了我的“Base SDK”(在我的情况下为 10.1)构建设置的最后两个数字:
xcodebuild -scheme mylib -workspace mylib_objc.xcworkspace -sdk "iphonesimulator10.1" build
输出错误:
/bin/sh -c /Users/user/Library/Developer/Xcode/DerivedData/mylib_objc-dcainaehwbdhdeeyoykilqflodnx/Build/Intermediates/mylib.build/Debug-iphonesimulator/mylib.build/Script-AEDFEE9B1B25C0FD00756827.sh
XCode has selected SDK: iphonesimulator with version: 0.1 (although back-targetting: 7.0)
...therefore, OTHER_SDK_TO_BUILD = iphoneos0.1
RECURSION: I am the root ... recursing all missing build targets NOW...
RECURSION: ...about to invoke: xcodebuild -configuration "Debug" -project "mylib.xcodeproj" -target "mylib" -sdk "iphoneos0.1" build RUN_CLANG_STATIC_ANALYZER=NO BUILD_DIR="/Users/user/Library/Developer/Xcode/DerivedData/mylib_objc-dcainaehwbdhdeeyoykilqflodnx/Build/Products" BUILD_ROOT="/Users/user/Library/Developer/Xcode/DerivedData/mylib_objc-dcainaehwbdhdeeyoykilqflodnx/Build/Products" SYMROOT="/Users/user/Library/Developer/Xcode/DerivedData/mylib_objc-dcainaehwbdhdeeyoykilqflodnx/Build/Products"
xcodebuild: error: SDK "iphoneos0.1" cannot be located.
Command /bin/sh failed with exit code 64
然后我与一位拥有 xCode 8(因此 base sdk=10.0)的同事尝试,错误是 xcodebuild: error: SDK "iphoneos0.0" cannot be located.
知道如何强制编译吗?
【问题讨论】:
【参考方案1】:您正在使用旧的构建脚本构建您的库。在这里查看我的答案
Build fat static library (device + simulator) using Xcode and SDK 4+
然后更新你的脚本应该没问题。
【讨论】:
以上是关于xcode >= 8 无法编译我的 Objective-C 库的主要内容,如果未能解决你的问题,请参考以下文章
Xcode 8 单元测试错误:无法确定 TEST_HOST 的包标识符
Xcode 8 beta 4:在物理设备上运行时“无法附加到 pid:1110”