iOS:<未知>:0:错误:未知参数:'-enable-batch-mode'命令CompileSwiftSources失败,退出代码为非零

时间:2018-10-25 12:04:06

标签: ios swift xcode compiler-errors toolchain

我有一个我不理解的错误消息。我在www.swift.org上下载了swift工具链4.0.3,因为我收到一条错误消息“使用Swift 4.0.3编译的模块无法由Swift 4.2编译器导入:”

现在,它使我得到了不同的消息:

CompileSwiftSources normal arm64 com.apple.xcode.tools.swift.compiler (in target: CameraDemo)
    cd /Users/OlostA/Desktop/Git/r-d/CamBox
    export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer
    export SDKROOT=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk
    export TOOLCHAINS="org.swift.40320171205a "
    /Library/Developer/Toolchains/swift-4.0.3-RELEASE.xctoolchain/usr/bin/swiftc -incremental -module-name CameraDemo -Onone -enable-batch-mode -enforce-exclusivity=checked -sdk /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk -target arm64-apple-ios9.3 -g -module-cache-path /Users/OlostA/Library/Developer/Xcode/DerivedData/ModuleCache.noindex -Xfrontend -serialize-debugging-options -enable-testing -index-store-path /Users/OlostA/Library/Developer/Xcode/DerivedData/CameraDemo-atqalgbmsahmkqezdvsdizmgxtek/Index/DataStore -swift-version 4 -I /Users/OlostA/Library/Developer/Xcode/DerivedData/CameraDemo-atqalgbmsahmkqezdvsdizmgxtek/Build/Products/Debug-iphoneos -F /Users/OlostA/Library/Developer/Xcode/DerivedData/CameraDemo-atqalgbmsahmkqezdvsdizmgxtek/Build/Products/Debug-iphoneos -F /Users/OlostA/Desktop/Git/r-d/framework/iphonesimulator -F . -F CameraDemo -F YI360Demo -F . -F CameraDemo -F YI360Demo -F . -F CameraDemo -F YI360Demo -F /Users/OlostA/Desktop/Git/r-d/CamBox/YICamera.framework -F /Users/OlostA/Desktop/Git/r-d/CamBox/SwiftyJSON.framework -F /Users/OlostA/Desktop/Git/r-d/CamBox/CocoaAsyncSocket.framework -F . -F CameraDemo -F YI360Demo -F /Users/OlostA/Library/Developer/Xcode/DerivedData/CameraDemo-atqalgbmsahmkqezdvsdizmgxtek/Build/Products/Debug-iphoneos/CocoaAsyncSocket.framework -F /Users/OlostA/Library/Developer/Xcode/DerivedData/CameraDemo-atqalgbmsahmkqezdvsdizmgxtek/Build/Products/Debug-iphoneos/YICamera.framework -F /Users/OlostA/Library/Developer/Xcode/DerivedData/CameraDemo-atqalgbmsahmkqezdvsdizmgxtek/Build/Products/Debug-iphoneos -F /Users/OlostA/Library/Developer/Xcode/DerivedData/CameraDemo-atqalgbmsahmkqezdvsdizmgxtek/Build/Products/Debug-iphoneos/CameraDemo.app -F /Users/OlostA/Library/Developer/Xcode/DerivedData/CameraDemo-atqalgbmsahmkqezdvsdizmgxtek/Build/Products/Debug-iphoneos/CameraDemo.swiftmodule -F /Users/OlostA/Library/Developer/Xcode/DerivedData/CameraDemo-atqalgbmsahmkqezdvsdizmgxtek/Build/Products/Debug-iphoneos/CameraDemo.app/Frameworks -F /Users/OlostA/Library/Developer/Xcode/DerivedData/CameraDemo-atqalgbmsahmkqezdvsdizmgxtek/Build/Products/Debug-iphoneos/CameraDemo.app/_CodeSignature -F /Users/OlostA/Desktop/Git/r-d/CamBox -c -j4 /Users/OlostA/Desktop/Git/r-d/CamBox/CameraDemo/ViewController.swift /Users/OlostA/Desktop/Git/r-d/CamBox/CameraDemo/AppDelegate.swift -output-file-map /Users/OlostA/Library/Developer/Xcode/DerivedData/CameraDemo-atqalgbmsahmkqezdvsdizmgxtek/Build/Intermediates.noindex/CameraDemo.build/Debug-iphoneos/CameraDemo.build/Objects-normal/arm64/CameraDemo-OutputFileMap.json -parseable-output -serialize-diagnostics -emit-dependencies -emit-module -emit-module-path /Users/OlostA/Library/Developer/Xcode/DerivedData/CameraDemo-atqalgbmsahmkqezdvsdizmgxtek/Build/Intermediates.noindex/CameraDemo.build/Debug-iphoneos/CameraDemo.build/Objects-normal/arm64/CameraDemo.swiftmodule -Xcc -I/Users/OlostA/Library/Developer/Xcode/DerivedData/CameraDemo-atqalgbmsahmkqezdvsdizmgxtek/Build/Intermediates.noindex/CameraDemo.build/Debug-iphoneos/CameraDemo.build/swift-overrides.hmap -Xcc -iquote -Xcc /Users/OlostA/Library/Developer/Xcode/DerivedData/CameraDemo-atqalgbmsahmkqezdvsdizmgxtek/Build/Intermediates.noindex/CameraDemo.build/Debug-iphoneos/CameraDemo.build/CameraDemo-generated-files.hmap -Xcc -I/Users/OlostA/Library/Developer/Xcode/DerivedData/CameraDemo-atqalgbmsahmkqezdvsdizmgxtek/Build/Intermediates.noindex/CameraDemo.build/Debug-iphoneos/CameraDemo.build/CameraDemo-own-target-headers.hmap -Xcc -I/Users/OlostA/Library/Developer/Xcode/DerivedData/CameraDemo-atqalgbmsahmkqezdvsdizmgxtek/Build/Intermediates.noindex/CameraDemo.build/Debug-iphoneos/CameraDemo.build/CameraDemo-all-target-headers.hmap -Xcc -iquote -Xcc /Users/OlostA/Library/Developer/Xcode/DerivedData/CameraDemo-atqalgbmsahmkqezdvsdizmgxtek/Build/Intermediates.noindex/CameraDemo.build/Debug-iphoneos/CameraDemo.build/CameraDemo-project-headers.hmap -Xcc -I/Users/OlostA/Library/Developer/Xcode/DerivedData/CameraDemo-atqalgbmsahmkqezdvsdizmgxtek/Build/Products/Debug-iphoneos/include -Xcc -I/Users/OlostA/Library/Developer/Xcode/DerivedData/CameraDemo-atqalgbmsahmkqezdvsdizmgxtek/Build/Intermediates.noindex/CameraDemo.build/Debug-iphoneos/CameraDemo.build/DerivedSources/arm64 -Xcc -I/Users/OlostA/Library/Developer/Xcode/DerivedData/CameraDemo-atqalgbmsahmkqezdvsdizmgxtek/Build/Intermediates.noindex/CameraDemo.build/Debug-iphoneos/CameraDemo.build/DerivedSources -Xcc -DDEBUG=1 -emit-objc-header -emit-objc-header-path /Users/OlostA/Library/Developer/Xcode/DerivedData/CameraDemo-atqalgbmsahmkqezdvsdizmgxtek/Build/Intermediates.noindex/CameraDemo.build/Debug-iphoneos/CameraDemo.build/Objects-normal/arm64/CameraDemo-Swift.h -Xcc -working-directory/Users/OlostA/Desktop/Git/r-d/CamBox

<unknown>:0: error: unknown argument: '-enable-batch-mode'
Command CompileSwiftSources failed with a nonzero exit code

也许我必须删除这些参数,但是我不知道在哪里搜索...

您有什么想法吗?

1 个答案:

答案 0 :(得分:4)

TLDR

您无法采取任何措施来解决此问题。使用Xcode 9或将您的代码库更新为Swift 5。


完整答案:

当使用带有Swift 4.0.3工具链的Xcode 10来构建带有静态库的项目时,我遇到了相同的错误。

这里的问题如下:由于Xcode 10在Swift 4.2上运行,因此它为该特定Swift版本编写了一个编译命令。具体来说,它添加了-enable-batch-mode标志,从而优化了构建过程。如果您手动删除该标志(例如,将整个命令粘贴到终端应用中),则该标志应会成功。

当您更改工具链时,Xcode本身不足以理解,在4.0.3。中没有-enable-batch-mode这样的东西。

现在,您可以禁用批处理模式,它应该可以解决问题,对吗?您可以在Build Settings中进行操作,方法是添加新的用户定义设置SWIFT_ENABLE_BATCH_MODE,其值为NO

但是,猜猜会发生什么?另一个未知标志。

<unknown>:0: error: unknown argument: '-disable-batch-mode'
Command CompileSwiftSources failed with a nonzero exit code

相关问题: