Próbuję więc zainstalować Halide na moim Ubuntu 12.04 (64-bitowym). Potrzebuję llvm-3.2 i clang do zainstalowania.
Uruchomienie sudo apt-get install llvm-3.2
kończy się informacją, że „pakiet nie został znaleziony”.
Próbuję sudo apt-get install llvm
lub sudo apt-get install clang
instaluje wersje 2.9. Google mi w tym pomogło
sudo add-apt-repository ppa:kxstudio-team/builds
sudo apt-get update
Teraz sudo apt-get install llvm-3.2 clang-3.2
działa. Ale kiedy uruchamiam make w folderze Halide, wciąż słyszę brzęk: Nie znaleziono polecenia.
Odpowiedzi:
Ok, więc z powodzeniem skompilowałem Halide na Ubuntu 13.04, instalując
llvm
,clang
orazbuild-essential
. Zgaduję tylko, że Twój problem polega na tym, że LLVM lub kliknięcie z zainstalowanego PPA mogło nie działać całkiem dobrze. Wygląda na to, że rzeczywiście można pobrać LLVM 3.2 z Ubuntu dla 12.04, za pośrednictwem tak zwanego „proponowanego” archiwum. Możesz spróbować wyczyścić LLVM i zainstalować go z „proponowanego”. Wyjaśnię, jak to zrobić poniżej. Ponieważ wspomniałeś, że jesteś nowy w Ubuntu (w oryginalnej wersji pytania), najpierw wyjaśnię, co robi każde użyte polecenie, najlepiej jak potrafię.Więc
sudo apt-get install llvm-3.2
próbuje zainstalować pakiet o nazwiellvm-3.2
z obecnych składowisk włączona w systemie. W twoim przypadku nie można go znaleźć, więc polecenie nie powiodło się.sudo apt-get install llvm
zainstalowałemllvm
pakiet, który jest prawdopodobnie pakietem specjalnym, który korzysta z najnowszej wersji LLVM dostępnej w standardowych repozytoriach. W twoim przypadku było to 2,9. Ten sam pomysł dotyczysudo apt-get install clang
.sudo add-apt-repository ppa:kxstudio-team/builds
dodaje do systemu tak zwane osobiste archiwum pakietów lub PPA. Pozwala to uzyskać więcej oprogramowania z innego repozytorium lub źródła oprogramowania. Aby uzyskać więcej informacji, zobacz https://help.launchpad.net/Packaging/PPA . Wreszcie,sudo apt-get update
informuje Ubuntu, aby uzyskał informacje na temat pakietów dostępnych w aktualnie dostępnych repozytoriach. Możesz spojrzeć na http://www.debian.org/doc/manuals/debian-faq/ch-pkgtools.en.html, aby uzyskać więcej informacji na temat zarządzania pakietami w Debianie (z których większość powinna dotyczyć również Ubuntu, ponieważ Ubuntu opiera się na Debianie).Tak więc kroki, aby usunąć posiadane pakiety i zainstalować dostępne wersje z precyzyjnie zaproponowanych:
sudo apt-get purge llvm-3.2 clang-3.2
do całkowitego usunięcia LLVM i brzęknięcia z systemu.sudo add-apt-repository --remove ppa:kxstudio-team/builds
aby usunąć PPA z systemu.llvm-3.2
pakietu , a druga powstrzyma system przed próbą uaktualnienia wszystkiego do Proponowanych wersji.sudo apt-get update
do pobierania informacji o dostępnych pakietach i wersjach.sudo apt-get install llvm-3.2/precise-proposed
aby zainstalować LLVM 3.2, i użyj,sudo apt-get install clang/precise-proposed
aby zainstalować Clang 3.0 (myślę, że to jest wersja, którą powinieneś dostać).sudo ln -s /usr/bin/llvm-config-3.2 /usr/local/bin/llvm-config
aby smakołyk systemullvm-config-3.2
(który jestllvm-config
, który przyszedł zllvm-3.2
) jakollvm-config
. Mówiąc dokładniej, tworzy to symboliczne łącze (lub dowiązanie symboliczne) do llvm-config-3.2 w innym miejscu, w którym Ubuntu będzie szukał programów (więcej informacji: ln , FHS , PATH ). Dlatego po uruchomieniu „llvm-config” Ubuntu znajdzie dowiązanie symboliczne i uruchomi program, na który wskazuje (llvm-config-3.2
).Mam nadzieję, że to działa. Nie testowałem tego, więc używaj na własne ryzyko itp. Jestem jednak pewien, że nie powinno to robić nic strasznego.
EDYCJA: Zauważ, że
llvm
illvm-3.2
są niezależne.llvm
zależy odllvm-2.9
( patrz tutaj ), podczas gdyllvm-3.2
jest osobny ( patrz zależności tutaj )Nie jestem też pewien, czy wiesz o uzupełnianiu tabulatorów ; może to być pomocne, jeśli szukasz polecenia, ale nie znasz jego nazwy (na przykład w tym przypadku prawdopodobnie pokazałoby, że
llvm-config
zostało wywołanellvm-config-3.2
).źródło
llvm
pakiet (sudo apt-get purge llvm
) zanim to zrobisz, aby upewnić się, że otrzymałeś właściwą wersję. Zawsze możesz sprawdzić, który plik próbujesz uruchomić, używając poleceniawhich [command]
. Na przykładwhich llvm-config
powinien przeczytać/usr/local/bin/llvm-config
. Zobacz en.wikipedia.org/wiki/Which_%28Unix%29 aby uzyskać więcej informacji.llvm
pakietu dla Ubuntu 12.04, byłallvm-2.9
,llvm-config
polecenie zostało połączonellvm-config
z tą samą wersją, tjllvm-config-2.9
. W Ubuntu 13.04 i 13.10llvm
pakiet instaluje LLVM 3.2, i spodziewałbym się, że skonfiguruje sięllvm-config-3.2
jakollvm-config
, tak jak w Ubuntu 13.10.