如何在Eclipse中将目录附加到$ PATH?

ein*_*ica 1 eclipse directory build eclipse-cdt path

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

我在Eclipse的项目设置对话框中找不到这样做的方法; 这个功能存在吗?如果没有,除了让我的脚本本身附加到$ PATH之外,你能否建议一个解决方法?

Jon*_*ham 6

要在| Project Properties选择C/C++ Build|中编辑运行构建的路径 Environment并通过按下Add...并填写PATHfor Name/your/pathfor来添加新的Path条目VALUE.请注意,CDT假定如果PATH已经定义了要附加到它的变量(在本例中).(你可能想检查一下Add to all configurations支票.)

这是一个截图:

buildenv

这是针对启动配置执行相同操作的方法

Environment要编辑的特定启动配置的选项卡中PATH,将其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;
}
Run Code Online (Sandbox Code Playgroud)

你应该观察这个输出:

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
Run Code Online (Sandbox Code Playgroud)