跳到主要内容
本页目录

目录与环境变量

安装目录 KXBUILD_HOME 里有什么,证书目录、共享目录,工程目录下会出现什么,用得上的环境变量。

安装目录 KXBUILD_HOME

工具链安装在一个目录中,环境变量 KXBUILD_HOME 指向它。安装脚本会写入用户环境并把 bin 加进 PATH。Windows 默认 %USERPROFILE%\kxbuild,Linux 和 macOS 默认 ~/kxbuild。

子目录 / 文件内容
bin/kxbuild、kxdevice、xcodebuild、xcrun、codesign 等全部可执行文件
Developer/Platforms/iOS 等平台的 SDK
Developer/Toolchains/Swift 工具链
resources/templates/新建项目的模板
keychain/全机共用的证书、描述文件和 password.properties,见证书与签名
sharedcomponents/本地组件库。放进来的 Xcode .xip 或 SDK 与工具链压缩包,doctor 优先安装而不是下载,见 iOS SDK

工程目录

位置说明
<工程目录>/keychain/工程自己的证书,优先于全局的 KXBUILD_HOME/keychain。也可以用构建设置 CODE_SIGN_KEYCHAIN 指向任意目录或单个 .p12
<工程目录>/build/<App>.ipaRelease 构建的产物,旁边的 <App>.AppStoreInfo.plist 是上传用的资源描述
<工程根>/compile_commands.json代码提示用的编译参数,插件自动维护
~/DerivedData/<名字>-<哈希>/构建输出目录,.app 和 Swift 包都在这里,可用 --derivedDataDir 修改
.xcodeproj/project.pbxprojproject add-setting、settings apply 和工程设置编辑器直接修改它,建议先纳入版本控制

环境变量

变量作用
KXBUILD_HOME安装目录
KXBUILD_NO_UPDATE_CHECK不再提示新版本,不做后台检查,CI 中可以设置
KXBUILD_SWIFT_WHOLE_MODULE哪些 Swift 目标整模块编译(Whole Module),只在 Windows 和 Linux 上生效。默认 packages,只对远程 Swift Package;all 对所有 Swift 目标;none 全部按文件编译,和 Xcode 的默认一样。工程里设置了 Compilation Mode 的以工程为准。也可以用 -D 给。链接报 …vpfi 未定义时设为 all,见常见问题
KXBUILD_NODE_DIST_URL、KXBUILD_RUBY_URL、KXBUILD_GEM_SOURCE只在安装脚本中读取,指定 Node、Ruby 的下载镜像和 gem 源,下载慢时使用
KXBUILD_PROJECT_NAME、KXBUILD_BUNDLE_ID、KXBUILD_PROJECT_DIR、KXBUILD_TEMPLATE_ID、KXBUILD_TEMPLATE_DIR、KXBUILD_BIN项目模板的 template.sh 中可读取的变量,见项目模板

接下来