Also versuche ich, Halide auf meinem Ubuntu 12.04 (64bit) zu installieren . Ich brauche llvm-3.2 und clang, um installiert zu werden.
Das Ausführen sudo apt-get install llvm-3.2
endet mit "Paket nicht gefunden".
Versucht sudo apt-get install llvm
oder sudo apt-get install clang
installiert 2.9 Versionen. Google hat mir dabei geholfen
sudo add-apt-repository ppa:kxstudio-team/builds
sudo apt-get update
Jetzt sudo apt-get install llvm-3.2 clang-3.2
funktioniert. Aber wenn ich make im Halide-Ordner starte, klingelt es immer noch: Befehl nicht gefunden.
Antworten:
Ok, so Halide auf Ubuntu 13.04 ich erfolgreich durch die Installation zusammengestellt
llvm
,clang
undbuild-essential
. Ich vermute nur, dass die von Ihnen installierte LLVM oder das Klirren der PPA möglicherweise nicht richtig funktioniert hat. Es scheint tatsächlich möglich zu sein, LLVM 3.2 von Ubuntu für 12.04 über das sogenannte "vorgeschlagene" Archiv zu beziehen. Sie können versuchen, die vorhandene LLVM zu löschen und sie von "vorgeschlagen" zu installieren. Wie das geht, erkläre ich weiter unten. Da du erwähnt hast, dass du neu in Ubuntu bist (in der ursprünglichen Version der Frage), erkläre ich zuerst, was jeder Befehl, den du bereits benutzt hast, so gut ich kann.So
sudo apt-get install llvm-3.2
versucht das Paket mit dem Namen zu installierenllvm-3.2
aus den aktuellen Repositories aktiviert auf Ihrem System. In Ihrem Fall konnte es nicht gefunden werden, daher ist der Befehl fehlgeschlagen.sudo apt-get install llvm
hat dasllvm
Paket installiert , bei dem es sich wahrscheinlich um ein spezielles Paket handelt, das nur die aktuellste LLVM verwendet, die in Ihren Standard-Repositorys verfügbar ist. In Ihrem Fall war das 2.9. Gleiches gilt fürsudo apt-get install clang
. Fügt Ihrem Systemsudo add-apt-repository ppa:kxstudio-team/builds
ein sogenanntes persönliches Paketarchiv oder PPA hinzu. Auf diese Weise können Sie mehr Software aus einem anderen Repository oder einer anderen Softwarequelle beziehen. Weitere Informationen finden Sie unter https://help.launchpad.net/Packaging/PPA . Schließlich,sudo apt-get update
Weist Ubuntu an, Informationen darüber zu erhalten, welche Pakete in den derzeit verfügbaren Repositorys verfügbar sind. Weitere Informationen zur Paketverwaltung in Debian finden Sie unter http://www.debian.org/doc/manuals/debian-faq/ch-pkgtools.en.html (die meisten davon sollten auch für Ubuntu gelten). da Ubuntu auf Debian basiert).Also, die Schritte, um die Pakete zu entfernen, die Sie haben, und die verfügbaren Versionen von präzise vorgeschlagen:
sudo apt-get purge llvm-3.2 clang-3.2
diese Option, um LLVM vollständig zu entfernen und von Ihrem System zu entfernen.sudo add-apt-repository --remove ppa:kxstudio-team/builds
, um die PPA von Ihrem System zu entfernen.llvm-3.2
Pakets und der zweite Teil verhindert, dass das System versucht, ein Upgrade auf die vorgeschlagenen Versionen durchzuführen.sudo apt-get update
diese Option , um Informationen darüber abzurufen, welche Pakete und Versionen jetzt verfügbar sind.sudo apt-get install llvm-3.2/precise-proposed
, um LLVM 3.2 zu installieren, undsudo apt-get install clang/precise-proposed
, um Clang 3.0 zu installieren (ich denke, das ist die Version, die Sie bekommen sollten).sudo ln -s /usr/bin/llvm-config-3.2 /usr/local/bin/llvm-config
das System so behandelnllvm-config-3.2
(wie esllvm-config
mitgeliefert wurdellvm-3.2
)llvm-config
. Genauer gesagt , erzeugt dies einen symbolischen Link (oder Symlink) zu llvm-config-3.2 an einer anderen Stelle, an der Ubuntu nach Programmen sucht (weitere Informationen: ln , FHS , PATH ). Wenn Sie also "llvm-config" ausführen, findet Ubuntu den Symlink und führt das Programm aus, auf das es zeigt (llvm-config-3.2
).Hoffentlich klappt das. Ich habe nichts davon getestet, also benutze es auf eigenes Risiko usw. Ich bin mir jedoch ziemlich sicher, dass es nichts Schlimmes tun sollte.
EDIT: Beachten Sie, dass
llvm
undllvm-3.2
unabhängig sind.llvm
hängt ab vonllvm-2.9
( siehe hier ), währendllvm-3.2
ist separat ( siehe Abhängigkeiten hier )Ich bin mir auch nicht sicher, ob Sie über das Ausfüllen von Registerkarten Bescheid wissen . Dies kann hilfreich sein, wenn Sie nach einem Befehl suchen, den Namen jedoch nicht genau kennen (in diesem Fall hätte sich beispielsweise wahrscheinlich gezeigt, dass der Befehl
llvm-config
aufgerufen wurdellvm-config-3.2
).quelle
llvm
Paket (sudo apt-get purge llvm
) deinstallieren, bevor Sie es ausführen, um sicherzustellen, dass Sie die richtige Version erhalten. Mit dem Befehl können Sie jederzeit überprüfen, welche Datei Sie ausführen möchtenwhich [command]
. Zum Beispielwhich llvm-config
sollte lesen/usr/local/bin/llvm-config
. Weitere Informationen finden Sie auf de.wikipedia.org/wiki/Which_%28Unix%29 .llvm
Paket für Ubuntu 12.04 verfügbar warllvm-2.9
, wurde derllvm-config
Befehl mit derllvm-config
aus derselben Version verknüpft , dllvm-config-2.9
. H. In Ubuntu 13.04 und 13.10, diellvm
installiert Paket LLVM 3.2, und ich würde erwarten , dass es dann auf bisllvm-config-3.2
wiellvm-config
, die es funktioniert in Ubuntu 13.10.