美文网首页
xcode及xcodebuild编译系统切换和版本选择

xcode及xcodebuild编译系统切换和版本选择

作者: 一双鱼jn | 来源:发表于2018-11-08 16:51 被阅读99次

    XCode10下使用原来的编译系统

    当升级XCode到10版本之后,在archive时遇到报错Cycle inside

    这是因为,XCode10下有了一套新的编译系统,并且是默认使用的。新的编译系统对工程有了更严格的检查。所以,会导致出现使用XCode9可以编译通过的工程,在XCode10下无法编译通过。

    简单的解决方式可以使用如下的方式更改XCode10的编译系统。仍然使用旧版的编译系统。

    1. 选择File - workspace setting
    xcode_workspace_setting.png
    1. 在弹出框中选择 Legacy Build System
    xcode_build_system.png

    xcodebuild使用旧版本编译系统

    上面的方式只更改了手动通过XCode打包时编译系统。使用xcodebuild命令进行打包时的编译环境仍然使用的是最新的编译系统。

    可以通过在xcodebuild命令后通过-UseModernBuildSystem=<value>参数来指定所使用的构建系统。value=0value=NO表示使用旧版本构建系统(Legacy build system)。value=1value=YES表示使用新的构建系统。

    如下所示

     xcodebuild archive -workspace Toon.xcworkspace -scheme Toon -configuration Release -archivePath ~/Desktop/Toon.xcarchive CODE_SIGN_IDENTITY="iPhone Distribution: Beijing Syswin Internet Technology Co. Ltd." PROVISIONING_PROFILE="d73920ec-9178-4f26-a0b8-c89ca2bbea6d" -UseModernBuildSystem=NO
    

    XCode时,更改xcodebuild所使用的XCode版本

    当安装了多个版本的XCode时,可以通过如下方式选择xcodebuild所使用的xcode版本的

    打开xcode偏好设置,选择location

    xcode_command_line_tool_select.png

    或 可以通过xcode-select命令进行选择

    参考资料

    http://www.skyfox.org/modify-legacy-or-new-build-system.html

    相关文章

      网友评论

          本文标题:xcode及xcodebuild编译系统切换和版本选择

          本文链接:https://www.haomeiwen.com/subject/yxwwxqtx.html