Po zainstalowaniu clang-3.5
pakietu, wpisanie clang
lub clang++
w wierszu poleceń wyświetla komunikat informujący, w których pakietach można znaleźć te programy. Próbując ponownie uruchomić instalację clang-3.5
, apt stwierdza, że jest już zainstalowany i najnowszej wersji.
Oryginalna instalacja została wykonana za pomocą polecenia:
sudo apt-get install clang-3.5 llvm
build-essential
został zainstalowany wcześniej.
Jakieś pomysły na to, co mogło się stać?
ln -s /usr/bin/llc-6.0 /usr/bin/llc
Właściwym sposobem użycia szczęk jako domyślny
cc
ic++
jest w użyciuupdate-alternatives
:więc najpierw musisz dodać
clang-3.5
lubclang++-3.5
jako alternatywę dla np.gcc
ig++
:Jeśli w dowolnym momencie musisz wrócić do
gcc
lubg++
możesz skorzystać z--config
opcji:źródło
cc
/c++
pomiędzy dwiema ścieżkami? Co to100
w końcu jest? Priorytet?update-alternatives
dokumenty. Myślę, że mają lepsze wyjaśnienia niż cokolwiek, co tu streszczę.W systemie Ubuntu 15.04 można również zainstalować pakiet clang wraz z pakietem clang-xx. Następnie możesz wpisać clang ++ i należy znaleźć odpowiedni plik wykonywalny.
źródło
Dodając do odpowiedzi Yan Foto (i na wypadek, gdyby Twoim celem było uzyskanie użytecznego,
clang
ale niekoniecznie wykorzystującego go jakocc
), możesz faktycznie dodać cały zestaw programów za jednym razem, używając(Zauważ, że zestaw plików binarnych dostarczanych z każdą wersją clang może się różnić, np. 3.6 ma
clang-tblgen
, 3.8 nie.)Jeśli powtórzysz to dla każdej zainstalowanej wersji clang, będziesz mógł przełączać się między nimi za pomocą jednego
update-alternatives
polecenia.(Tymczasem najwyraźniej nadal trwa debata na temat tego, czy dołączyć te linki do pakietów Ubuntu, czy nie: https://bugs.launchpad.net/ubuntu/+source/llvm-3.1/+bug/991493 )
źródło
Utwórz plik .bashrc w swoim katalogu domowym. Wpisz ten wiersz kodu.
alias clang ++ = "clang ++ - 3.5"
Zamknij terminal. Otwórz to ponownie. Następnie spróbuj ponownie skompilować swój program.
Z tego co wiem, clang nie zadziała, jeśli nie podasz wersji w nazwie polecenia „clang ++ - 3.5”. Więc właśnie aliasuję nazwę w moim pliku .bashrc. Więc muszę tylko wpisać „clang ++”.
Przy okazji pobrałem Clang 3.5, więc dostosuj poprzednią poradę do swojej wersji.
źródło
Jeśli poprawnie zainstalowałeś klang, innym bardzo łatwym sposobem na zaoszczędzenie kłopotów z wpisaniem numeru wersji wraz z nazwą programu jest użycie funkcji autouzupełniania, na przykład (po zainstalowaniu klangu ++ - 3.5):
Musisz tylko pisać
clang+
, naciskać Tabi Enter. Działa tak samo z nazwami katalogów, nazw plików itp. (To jednak nie pomoże, jeśli masz zainstalowaną więcej niż jedną wersję programu).źródło
To powinno ustawić alternatywy aktualizacji dla clang- 4.0, jeśli clang- 3.8 (jak w Ubuntu 16.04) jest zainstalowany:
źródło
Dodanie do odpowiedzi Johanna Wendina na temat symlinkowania. W powłoce root można jednocześnie połączyć wszystkie różne narzędzia clang:
na przykład
a następnie powtórz dla:
Wtedy wszystko powinno być powiązane, a nie tylko mały wybór. (Może wciąż coś zapomniałem).
To znajdzie wszystkie pliki zgodnie ze wzorcem w / usr / bin, usunie końcowe liczby (-8 lub -9 lub nawet -10), a następnie utworzy dowiązania symboliczne na każdym z nich.
źródło