【问题标题】:Including 'Run Script' phase output files in build在构建中包含“运行脚本”阶段输出文件
【发布时间】:2016-02-26 07:53:13
【问题描述】:

在 Xcode 7 中,您可以在 Build Phases 选项卡中创建“运行脚本”阶段。在该区域的底部,有一个“输入文件”部分和一个“输出文件”部分。

我有一个在$(DERIVED_FILE_DIR)/myfile.cpp 处生成.cpp 文件的脚本。该文件列在阶段的“输出文件”部分。但是,它似乎没有编译到我的程序中,因为它定义的符号被链接器识别为缺失。

我怎样才能告诉 Xcode 也编译这个文件?

【问题讨论】:

    标签: xcode build


    【解决方案1】:

    一种可能的解决方案(感觉像 hack)是将构建的文件插入到项目中,设置其位置(在实用工具栏的身份和类型部分),然后在项目文件中使用文本编辑其位置计算机独立性编辑。就我而言,文件条目(带有换行符以提高可读性)现在看起来像:

    DC40C4121C7FC98F0087702A /* bindings.cpp */ = {
        isa = PBXFileReference;
        lastKnownFileType = sourcecode.cpp.cpp;
        name = myfile.cpp;
        path = "$(DERIVED_FILE_DIR)/myfile.cpp";
        sourceTree = "<absolute>";
    };
    

    文件浏览器将其解释为绝对路径字面上为 $(DERIVED_FILE_DIR)/myfile.cpp 的文件(并且该文件在项目浏览器中始终显示为红色),但构建系统将从正确的位置获取该文件。

    【讨论】:

    • 嗨,我目前在 Xcode 8.3.2 中遇到了类似的问题。似乎虽然我在“运行脚本”阶段明确创建了文件,并且还在“输出文件”下指定了它,但在“编译源”中却无处可见,所以我无法将它添加到项目中。任何想法如何在没有黑客攻击的情况下解决它。谢谢!
    猜你喜欢
    • 2020-09-04
    • 2010-11-23
    • 2015-01-18
    • 1970-01-01
    • 2021-05-15
    • 2017-01-30
    • 1970-01-01
    • 1970-01-01
    • 2010-11-24
    相关资源
    最近更新 更多