Segue-se um excerto dos documentos do kit de ferramentas CUDA (no link ):
% bl0ck_qu0te% Com base nisso, você pode tecnicamente "forçar" uma versão gcc
e g++
a ser disponibilizada temporariamente pela metodologia na minha resposta agora excluída ...
Existe uma razão pela qual o update-alternatives
existe - foi criado para "symlink" gcc
e semelhante aos nomes dos executáveis real . Na realidade, /usr/bin/gcc-4.9
é realmente o executável do compilador gcc 4.9, e gcc
apenas simboliza para /etc/alternatives/gcc
, que por sua vez é um link simbólico para o executável gcc real
No meu ambiente 14.04 isso é mostrado aqui:
% file /usr/bin/gcc
/usr/bin/gcc: symbolic link to '/etc/alternatives/gcc'
% file /etc/alternatives/gcc
/etc/alternatives/gcc: symbolic link to '/usr/bin/gcc-4.8'
Na verdade, tenho muitas versões do GCC aqui, de 4,6 a 4,9, mas isso também se aplica a outras versões.
Para alterar a alternativa temporariamente, você pode fazê-lo com este comando: sudo update-alternatives --config gcc
Isso é o que mostra no meu sistema, com um cursor piscante no final:
% sudo update-alternatives --config gcc
There are 4 choices for the alternative gcc (providing /usr/bin/gcc).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/bin/gcc-4.8 60 auto mode
1 /usr/bin/gcc-4.6 30 manual mode
2 /usr/bin/gcc-4.7 50 manual mode
3 /usr/bin/gcc-4.8 60 manual mode
4 /usr/bin/gcc-4.9 40 manual mode
Press enter to keep the current choice[*], or type selection number:
Eu refiz manualmente as prioridades, mas você pode ver que eu posso selecionar manualmente qual compilador eu quero usar nesse ínterim. Portanto, você pode alterar isso temporariamente e, em seguida, alterná-lo para o gcc
desejado e, em seguida, alterná-lo quando terminar.
Isso deve, então, permitir que você use temporariamente um compilador por gcc
ou g++
invocação, em vez de precisar especificar um diretório do compilador.
Observe que isso provavelmente precisará ser feito também para g++
- especialmente considerando o snippet dos documentos acima. Portanto, use g++
de gcc
para alterar a versão de g++
'para usar'.
O problema é que não vejo nenhuma maneira mais fácil do que isso, neste caso. Então, toda vez que você entrar e alterar o compilador dessa maneira, para recuperá-lo para o padrão, será necessário executar novamente os comandos update-alternatives
para reconfigurá-lo de volta ao que era.
Como alternativa, você pode tentar usar a solução proposta pelo steeldriver , que aponta para outra solução em potencial Site Unix e Linux):
% bl0ck_qu0te%Não tenho certeza se essa abordagem funcionará, com base no trecho de documentação que eu li, mas pode funcionar, já que a resposta já está disponível há algum tempo.