我尝试使用xcodebuild生成一个xcarchive,稍后我可以使用添加了Xcode 5的新功能将其导出为.ipa。
这完全没问题:
xcodebuild -workspace 'MyWorkspace.xcworkspace' -scheme 'MyScheme' -configuration 'Release' -archivePath tmp.xcarchive archive
xcodebuild -exportArchive -exportFormat IPA -archivePath tmp.xcarchive -exportPath app.ipa -exportWithOriginalSigningIdentity
但是,只要我将自定义构建设置添加到存档命令:
-derivedDataPath build SYMROOT=build/build.sym DSTROOT=build/build.dst OBJROOT=build/build.obj SHARED_PRECOMPS_DIR=build/build.pch
生成的.xcarchive为空,但没有错误。
有什么想法吗?
答案 0 :(得分:3)
对我来说,这与Xcode中的Installation Directory
部署构建设置有关:CMake以某种方式将其设置为""
,即空字符串,应该是"/Applications"
, Xcode默认。对我来说,将其设置为"/Applications"
以外的任何内容都会导致生成的存档为空,因此“格式错误”。
因此,由于CMake或其他原因,您的项目可能因Installation Directory
设置为"/Applications"
而不知情。
要使用CMake进行设置,请将其添加到目标属性:
set_target_properties(${MODULE} PROPERTIES
...
XCODE_ATTRIBUTE_INSTALL_PATH "/Applications"
...
)
答案 1 :(得分:3)
对我来说,当我尝试创建存档的驱动器上没有剩余空间时,会发生此错误。但我无法从控制台中的错误中分辨出来
答案 2 :(得分:0)
在我的情况下,'archivepath'目录/文件路径在前面的步骤中设置不正确,并且它正在查找没有.xcarchive文件的目录。值得手动检查路径以及目录中是否存在存档文件
答案 3 :(得分:0)
就我而言,我在路径末尾缺少 (SELECT * FROM EMP ORDER BY EMP.COMM)
UNION ALL
B_SAL
扩展名。
.xcarchive