xcode 执行归档时如何获取SPM的路径?

v2g6jxz6  于 2023-02-05  发布在  其他
关注(0)|答案(1)|浏览(164)

我现在尝试使用WireGuardKit,它要求创建一个"External Build System",并用${BUILD_DIR}/... /... /SourcePackages/checkouts/wireguard/Sources/WireGuardKitGo填充Directory(此路径已被修改,我保证此路径将允许我通过编译)。
但是,当我执行存档时,Xcode报告错误unable to spawn process '/usr/bin/make' (No such file or directory)
我怀疑$(BUILD_DIR)在编译执行时没有值,或者我在这个阶段不能使用这个环境变量,因为当我不使用相对路径,而是使用绝对路径给Directory赋值时,项目能够成功归档。
所以我的问题是,当我执行归档的时候,我如何得到我使用SPM继承的包的路径?或者我可以在执行归档的时候使用$(BUILD_DIR)环境变量吗?为什么它和编译的时候不一样?

    • 更新**:

我了解到$(BUILD_DIR)在其中使用$(),当我尝试直接使用$()时,它仍然报告错误,我还尝试了$(BUILD_PATH)$(BUILD_ROOT)$(BUILT_PRODUCTS_DIR)等变量,但它们都不起作用。
那么,$()(一个在执行归档时没有值的环境变量)是否有问题?
执行归档时如何获取SPM目录?

sc4hvdpw

sc4hvdpw1#

我能够使用外部构建系统的替代配置解决此问题
这是一个教程(参见“手动Xcode步骤”一节)
主要思想是在外部构建系统配置中使用build_wireguard_go_bridge.sh脚本:
构建工具:$(PROJECT_DIR)/Scripts/build_wireguard_go_bridge.sh
参数:$(ACTION)
目录:<empty>

相关问题