1、编译模拟器时,应该去掉不需要的架构,增加EXCLUDED_ARCHS='i386 arm64'
2、编译Cocoapods的Pods.xcodeproj
报错,修改Podfile
,避免Cocoapods
修改SYMROOT
导致编译报错
# 不修改symroot
class Pod::Project
def symroot=(symroot)
end
end
3、指定SYMROOT
后编译就报错,
用xcodebuild
编译一般会指定SYMROOT
,好获取编译产物,方便操作,但Xcode12.1如果通过xcodebuild
自定义了SYMROOT
,编译就报错。
Workaround:不指定SYMROOT
,而是从Build Setting里取出来用。
Ruby 脚本:
buildsetting = `xcodebuild -showBuildSettings 2>/dev/null`
buildsetting_list = buildsetting.split("\n")
symroot = ''
objroot = ''
buildsetting_list.each do |variable|
variable_strip = variable.strip
symroot = variable_strip if variable_strip.start_with?('SYMROOT')
objroot = variable_strip if variable_strip.start_with?('OBJROOT')
end
puts symroot.tr(" ", "").split('=').last
puts objroot.tr(" ", "").split('=').last