Copie e cole executáveis UNIX para $ PATH não funciona?

0

Por que quando eu copiei as ferramentas do compilador C da pasta do aplicativo Xcode para usr / bin (que é um dos $ PATH para Mac OS X), o Terminal parece não conseguir vê-lo? Executar um comando find nele não produz resultados: "./gcc: No such file or directory". Executando o comando que eu sei que está em usr / bin de acordo com o Finder traz o erro: "./gcc: Nenhum tal arquivo ou diretório"

    
por humanitiesclinic 28.07.2013 / 16:28

3 respostas

4

Você parece estar executando ./gcc . No mundo * nix, ./ significa "o diretório atual". Então, quando você executa ./gcc , está dizendo ao sistema operacional para procurar um executável chamado gcc , que está no diretório em que você está. A menos que você execute o comando /usr/bin , nenhum executável será encontrado e você receberá um erro.

Como você colocou gcc em um diretório que está em seu caminho, não é necessário fornecer um caminho completo para acessá-lo, apenas o nome. Então, em vez de ./gcc run gcc , ele deve funcionar.

    
por 28.07.2013 / 17:46
2

Aqui estão algumas coisas para conferir:

  1. Depois de mover os binários, você pode ter que dizer ao seu terminal para varrer novamente o PATH. Execute o comando 'rehash' para fazer isso.
  2. Você deve atualizar seu caminho para apontar para as ferramentas, não mover as ferramentas para apontar para o caminho. Atualize o caminho fazendo isso:

    export PATH="$ {PATH}: / caminho / para / ferramentas / dir"; rehash

por 28.07.2013 / 17:00
1

Se você colocar o executável em / usr / bin, você pode acessá-lo, usando apenas 'gcc' Não há necessidade de './'. Além disso, a permissão do comando recém-adicionado deve ser 755.

chmod 755 /usr/bin/command_name
    
por 28.07.2013 / 16:55