O comando está disponível como usuário, mas não como sudo?

1

Estou no processo de construir o gendev, um ambiente de desenvolvimento de sega genesis e estou me deparando com um problema interessante.

Quando tento instalar via "sudo make install" recebo um erro informando que um programa chamado "rescomp" não foi encontrado, veja abaixo:

make[1]: Entering directory '/home/bubo/Genesis-Dev/gendev-read-only/sgdk/sgdk-read-only'
rescomp res/libres.res res/libres.s
make[1]: rescomp: Command not found
make[1]: *** [res/libres.s] Error 127
make[1]: Leaving directory '/home/bubo/Genesis-Dev/gendev-read-only/sgdk/sgdk-read-only'
make: *** [sgdk-read-only/libmd.a] Error 2

No entanto, se eu voltar a ser um usuário normal (não root), posso executar o programa rescomp sem problemas. Isso é um problema com variáveis de ambiente? Como posso ativar a conta root para usar "rescomp" também?

    
por Bubo 15.08.2014 / 03:34

1 resposta

2

Como se constata, o "make" original modificou apenas a variável de ambiente PATH do usuário e não a de root!

Descobri isso usando o comando:

printenv

em cada conta e, em seguida, notei as diferentes variáveis de caminho, a partir daí modifiquei o caminho da raiz fazendo login como usuário root e emitindo o seguinte:

export PATH = $ PATH: / usr / jogos: / usr / local / games

Onde / usr / games e / usr / local / games eram os dois diretórios que estavam faltando!

    
por Bubo 15.08.2014 / 03:43