2009-04-26 2 views
1

Я пытаюсь отладить сценарий cons, и проблема, с которой я сталкиваюсь, заключается в том, что исполняемый файл в моем собственном $PATH, кажется, не находится. Короче: может cons найти исполняемые файлы на моем пути?Могут ли cons найти исполняемые файлы на моем пути?

Это может показаться глупым вопросом, так как FAQ says

Против не проходит рабочую среду пользователя ребенку процессов, которые она разветвляется для создания программного обеспечения. Все, что вам нужно или хочет пройти из среды пользователя, должно быть сделано явно.

Это мне не ясно, однако, что cons не должны быть в состоянии видеть мой $PATH (выше сформулировано таким образом, что я бы не стал ожидать дочерние процессы, чтобы иметь доступ к любой из переменных окружения). При выполнении команды Construct, $PATH оценивается как пустой, но $ENV{PATH} содержит мой путь.

Это не помогает, что я не знаю ни consPerl, так что я не знаю, что я делаю, и где начать искать то, что вызывает проблему :) Для чего это стоит, сценарий это не работает для меня, но работает для оригинального автора скрипта, находится here.

ответ

1

Для чего это стоит, директива в FAQ правильно что-то вроде этого будет решить эту проблему:

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

, который затем может последовать, например,

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

в run/install/build/все, что вы делаете, с помощью скрипта cons.

Смежные вопросы