Définissez clang-3.8 par défaut


11

J'ai installé clang 3.0 et clang 3.8:

$ sudo update-alternatives --config clang

update-alternatives: erreur: aucune alternative pour clang.

Comment définir 3.8 comme /usr/bin/clang?


Faites une ou plusieurs entrées clang dans / etc / alternatives / :,sudo update-alternatives --install "/usr/bin/clang" "clang" "[path-to]/clang" 1000 comme cet exemple java askubuntu.com/questions/56104/…
Knud Larsen

En fait, le nom est «cc». Vous devez donc émettre: sudo update-alternatives --config cc
duli

Réponses:


23
sudo update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-3.8 100

sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-3.8 100

Je suivais un autre exemple qui utilisait «60» pour représenter «6,0» et --slaveau lieu de règles indépendantes - qu'en pensez-vous? update-alternativesne semble pas faire beaucoup plus que de chaîner des liens symboliques, mais je ne l'ai pas suffisamment utilisé pour savoir ce qui peut mal se passer.
John P

Merci pour la réponse. Que signifie le mot 100à la fin?
banarun

Le «100» est un numéro de priorité arbitraire; l'application avec le numéro de priorité le plus élevé sera utilisée automatiquement, sauf indication contraire. Par exemple, mon système affiche gccune priorité de 20 et clangune priorité de 10; en mode automatique, update-alternativessélectionne gcc. Je pourrais exécuter ce qui précède avec une priorité de 50 et cela définirait la préférence automatique clang-3.8au - dessus des deux options existantes
arclight

1

Essayer:

sudo update-alternatives --config cc

Et il vous présentera la liste des options à choisir.

L'utilitaire make utilise la commande cc pour compiler, qui est en fait un lien vers gcc, clang etc.


1
sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-8   81 --slave /usr/bin/clang++ clang++ /usr/bin/clang++-8    --slave /usr/share/man/man1/clang.1.gz clang.1.gz /usr/share/man/man1/clang-8.1.gz --slave /usr/bin/clang-tidy clang-tidy /usr/bin/clang-tidy-8  --slave /usr/bin/clang-format clang-format /usr/bin/clang-format-8
sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-6.0 60 --slave /usr/bin/clang++ clang++ /usr/bin/clang++-6.0  --slave /usr/share/man/man1/clang.1.gz clang.1.gz /usr/share/man/man1/clang-6.0.1.gz --slave /usr/bin/clang-tidy clang-tidy /usr/bin/clang-tidy-6.0 --slave /usr/bin/clang-format clang-format /usr/bin/clang-format-6.0

Ces commandes ajouteront 2 entrées et seront sélectionnées par défaut comme clang-8. Vous pouvez configurer en utilisant

sudo update-alternatives --config clang

Cela mettra à jour clang, clang ++, les pages de manuel, le format clang, le rangement clang.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.