Pergunta

Eu estou tentando depurar um script cons, eo problema que estou tendo é que um executável em minha própria $PATH não parece ser localizado. Em suma:? Can cons achado executáveis ??no meu caminho

Isto pode parecer uma pergunta boba, desde o FAQ diz

Contras não passa ambiente do usuário para os processos filho que bifurca para construir o software. Qualquer coisa que você precisa ou quer passar do ambiente do usuário deve ser feito de forma tão explícita.

Não é claro para mim, no entanto, que cons não deve ser capaz de ver a minha $PATH (acima está redigido de tal forma que eu não esperaria processos filhos para ter acesso a qualquer das variáveis ??de ambiente). Na execução do Construct, avalia $PATH para esvaziar mas $ENV{PATH} contém o meu caminho.

Não ajuda que eu não sei cons nem Perl, então eu realmente não sei o que estou fazendo, nem por onde começar a olhar para o que está causando o problema :) Por que vale a pena, o script que não funciona para mim, mas não funciona para o autor original do script, está localizado aqui .

Foi útil?

Solução

Por que vale a pena, a diretriz na FAQ é correto em que algo como isso vai resolver o problema:

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

qual pode então ser seguida por, por exemplo,

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

para executar / instalação / configuração / que você está fazendo com o script cons.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top