1

我正在尝试调试cons脚本,我遇到的问题是我自己的可执行文件$PATH似乎没有找到。简而言之:可以cons在我的路径中找到可执行文件吗?

这似乎是一个愚蠢的问题,因为常见问题解答

Cons 不会将用户的环境传递给它为构建软件而派生的子进程。您需要或想要从用户环境传入的任何内容都必须明确地完成。

但是,我不清楚那cons不应该看到我$PATH的(上面的措辞是我不希望子进程可以访问任何环境变量)。在执行Construct,$PATH评估为空但$ENV{PATH}确实包含我的路径。

我不知道cons也无济于事Perl,所以我真的不知道自己在做什么,也不知道从哪里开始寻找导致问题的:)原因对于它的价值,对我不起作用的脚本,但确实适用于脚本的原作者,位于此处

4

1 回答 1

1

对于它的价值,常见问题解答中的指南是正确的,因为这样可以解决问题:

# A standard construction environment.
$env = new cons(
   ENV => { PATH => $ENV{PATH} }
);

然后可以跟随,例如,

Command $env 'foo', qq(echo =`which tex`=);

运行/安装/构建/无论你对cons脚本做什么。

于 2009-04-27T03:30:44.663 回答