Como influenciar qual compilador é escolhido pelos sistemas de compilação como o CMake

3

Estou no Archx64 com o bspwm como WM. Eu tenho tanto gcc e clang instalado e atualizado para as versões mais recentes. Eu quero que os sistemas de compilação me perguntem toda vez para escolher g ++ ou clang ++ para compilar.

Eu preciso do clang ++ como compilador padrão para minhas próprias coisas, mas eu tenho o cmake que geralmente escolhe compiladores por conta própria. Então eu exportei C e CXX como clang e clang ++ em .bashrc . Tudo funciona bem como esperado, mas o problema surge quando eu preciso compilar algo com g + + e o programa procura por /usr/bin/c++ e encontra clang ++ em vez de g + +. Eu preciso, toda vez que algum programa tenta compilar suas coisas, ele poderia me perguntar de antemão, qual compilador usar. É possível?

Meu método atual é exportar todas as vezes e reiniciar minha máquina: p, o que é muita loucura.

    
por Abhinav Gauniyal 08.02.2015 / 13:17

1 resposta

3

Não há uma resposta geral real. Se alguma ferramenta insistir em alguma ferramenta, isso será feito.

Se as variáveis de ambiente de configuração funcionarem para você, não há necessidade de reinicializar. Você pode simplesmente chamar seu comando assim:

CXX=g++ cmake ...

Isso executará o cmake com a variável de ambiente CXX definida como g ++.

Se você realmente quiser fazer o que pediu, poderá substituir /usr/bin/c++ (ou qualquer comando que seja necessário para sua ferramenta) por um shell script solicitando o compilador necessário e, em seguida, chamando esse compilador. - Mas tenha certeza que você sabe o que está fazendo se decidir seguir esse caminho.

    
por 08.02.2015 / 13:25

Tags