xcodebuild 输出二进制文件在哪里?
Posted
技术标签:
【中文标题】xcodebuild 输出二进制文件在哪里?【英文标题】:xcodebuild where is the output binary? 【发布时间】:2016-03-19 22:18:37 【问题描述】:抱歉,我是 ios 开发的新手。
我正在构建一个 Cordova/Meteor 应用程序。 Meteor 创建了一个构建目录,我想要一个命令行脚本来构建二进制文件以上传到 itunesconnect。
这是我目前所拥有的:
#!/bin/bash
CODE_SIGN_IDENTITY="Michael"
NAME="appExpertAlerts"
# Create the xcode project
meteor add-platform ios
echo "STARTING BUILD"
meteor build ../../ops/production/ios \
--mobile-settings ../../ops/production/meteor/settings.json \
--server https://phone.app.io:443 \
--verbose
meteor remove-platform ios
popd
# Build the xcode project
pushd ios/ios/project
xcodebuild \
build \
-sdk iphoneos \
-configuration Release \
-xcconfig cordova/build.xcconfig \
-project "$NAME.xcodeproj" \
-target "$NAME" \
SHARED_PRECOMPS_DIR=$(pwd)/build/sharedpch \
CODE_SIGN_IDENTITY="$CODE_SIGN_IDENTITY" \
ARCHS="armv7 armv7s arm64" \
VALID_ARCHS="armv7 armv7s arm64" \
CONFIGURATION_BUILD_DIR=$(pwd)/build/device \
popd
构建成功,我可以看到输出文件,但找不到要上传到 itunesconnect 的二进制文件。
输出二进制文件在哪里?或者我如何创建一个?
【问题讨论】:
【参考方案1】:我还没有实现将构建上传到 itunesconnect 的自动化,听起来很有趣 :-)
然而,在触发构建之后,我认为,您尝试实现的目标最好实现为“运行脚本”构建阶段。在那里,您设置了如下所述的变量:
https://developer.apple.com/library/mac/documentation/DeveloperTools/Reference/XcodeBuildSettingRef/1-Build_Setting_Reference/build_setting_ref.html#//apple_ref/doc/uid/TP40003931-CH3-SW42
对你来说特别有趣的应该是 TARGET_BUILD_DIR:
TARGET_BUILD_DIR
描述:目录路径。标识目录的根 包含产品文件的层次结构(无中间构建 文件)。
运行对产品文件进行操作的脚本构建阶段 定义它们的目标应使用此构建设置的值。 但是运行其他产品文件的运行脚本构建阶段 目标应改为使用 BUILT_PRODUCTS_DIR。
示例值: /Volumes/Users/genica/MyProject/build/Debug /tmp/MyProject.dst/Users/genica/Applications /Volumes/Users/genica/MyProject/build/UninstalledProducts 相关内容: DEPLOYMENT_LOCATION(部署位置),INSTALL_PATH(安装 目录),SKIP_INSTALL。
这些变量可以在您的脚本中以$VAR NAME
的形式访问。
.ipa 存档可以创建,如这篇 SO 文章所示:Xcode "Build and Archive" from command line
您可能会特别注意shenzen
工具,如果我理解正确的话,它就是您当前正在构建的工具。 https://github.com/nomad/shenzhen
【讨论】:
以上是关于xcodebuild 输出二进制文件在哪里?的主要内容,如果未能解决你的问题,请参考以下文章
xcodebuild -create-framework 错误:无法读取文件
xcodebuild 命令无法与动态可可触摸框架一起正常工作