iOS打包时遇到build commands failed的问题:

The following build commands failed:

CompileC /Users/xxx/Library/Developer/Xcode/DerivedData/xxx/xxx/xxx normal armv7 objective-c com.apple.compilers.llvm.clang.1_0.compiler (in target 'xxxx' from project 'xxxx')

(1 failure)

搜索了一下网上的对于这种问题的解决办法,有的说是需要在xcode中运行一下项目代码,看下有没有什么编译报错,这个时候只要解决xcode的编译问题就能解决打包问题,但是我项目本身xcode编译都是OK的,所以这种情况并不适合解决我的问题。

也有博客说是可能是pod库类引入的问题,但是项目编译运行是正常的,各种pod库的引入也是没有报错的,重新pod install了之后同样无果,因此这种办法也是not work for me的。

也有说是执行命令的问题,我检查了编译脚本的xcodebuild的相关执行命令,也没发现什么问题(主要是对编译命令也不太熟悉,也不敢瞎改)

花了相当一段时间认真捣鼓之后,终于还是编译打包过了。是这么解决的:

电脑上安装了好几个版本的Xcode,有Xcode13.x,Xcode14.x的,之前用Xcode13来打包的,后面较新版本项目都是用Xcode14打包的,所以在Xcode-Preferences-Locations的command line tools仍然是默认选择的Xcode13版本的命令行工具,然后就在这里将其修改为正确的Xcode14版本的,并重启Xcode,重新运行编译脚本,发现还是不行。最后发现还是需要终端窗口中指定Xcode command tools的版本。

首先查看一下Xcode-select的版本

xcode-select --version

具体操作命令可以通过xcode-select --help来查看

一般来说,命令行的Xcode-select对应的都是/Applications/Xcode.app/Contents/Developer应用程序中的默认Xcode,但是这里我的Xcode14并不是,因此需要重新设置一下Xcode-select(这里我是将Xcode14放在桌面):

sudo xcode-select --switch /Users/xxxx/Desktop/Xcode14.0.app/Contents/Developer

当然这里后续要改回原来版本的话也可以再次执行switch命令,或者直接reset

xcode-select -reset

最后再清理一下DerivedData文件夹对应缓存,再次运行打包编译脚本,一切OK,最终archive success。

Reference:

The following build commands failed: CompileC build/derucciTS/Build/Intermediates.noindex... - 简书

在xcodebuild时候报错normal armv7 objective-c++ com.apple.compilers.llvm.clang.1_0.compiler - 简书

Runner/GeneratedPluginRegistrant.m normal armv7 objective-c com.apple.compilers.llvm.clang.1_0.compiler · Issue #50642 · flutter/flutter · GitHub

Technical Note TN2339: Building from the Command Line with Xcode FAQ_

文章来源

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: