【问题标题】:How can I append directories to $PATH in Eclipse?如何在 Eclipse 中将目录附加到 $PATH?
【发布时间】:2016-01-12 07:49:36
【问题描述】:

我正在处理的这个 C 项目有一个作为构建的一部分运行的脚本,它需要一些文件夹位于 $PATH 中。但是 - 其他项目不应该将它放在他们的路径中,Eclipse 本身也不应该。因此,这不是替换路径,而是追加特定项目的路径。

我在 Eclipse 的项目设置对话框中找不到执行此操作的方法;这个功能存在吗?如果没有,除了将我的脚本本身附加到 $PATH 之外,您能否建议一种解决方法?

【问题讨论】:

    标签: eclipse build path directory eclipse-cdt


    【解决方案1】:

    要编辑运行构建的路径,在Project Properties 中选择C/C++ Build | Environment 并通过按Add... 添加新路径条目,并为Name 填写PATH,为VALUE 填写/your/path。请注意,CDT 假定如果变量(在这种情况下为PATH)已经定义,您想要附加到它。 (您可能也想检查Add to all configurations 检查。)

    这是截图:

    这是如何为启动配置做同样的事情

    在您要编辑PATH 的特定启动配置的Environment 选项卡中,将PATH 设置为/tmp/abcd:${env_var:PATH}

    这是我的意思的截图:

    运行以下 C 程序:

    #include <stdio.h>
    #include <stdlib.h>
    
    int main(void) {
        puts("Updated PATH with /tmp/abcd prepended");
        puts(getenv("PATH"));
        puts("Saved version of PATH in case we need that");
        puts(getenv("ORIGPATH"));
        return 0;
    }
    

    你应该观察这个输出:

    Updated PATH with /tmp/abcd prepended
    /tmp/abcd:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
    Saved version of PATH in case we need that
    /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
    

    【讨论】:

    • 我刚刚意识到我没有回答你的问题,因为我做了运行配置,而不是构建配置。
    • 好的,我试图回答这个问题,但我没有删除答案的原始部分(即我无法让自己删除它 - 试图证明它可能会是对其他人有用)
    • 非常非常好的答案。我意识到我正在尝试同时使用 PATH 和 HOME。应用到PATH之后,我花了一段时间才意识到同样的事情需要应用到HOME。 $PATH 和 $HOME 本身不起作用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-02-21
    • 2020-01-21
    • 2021-10-13
    • 1970-01-01
    • 1970-01-01
    • 2019-09-04
    • 2011-11-13
    相关资源
    最近更新 更多