Jadi saya mencoba menginstal Halide di Ubuntu 12.04 (64bit) saya. Saya perlu llvm-3.2 dan dentang untuk diinstal.
Menjalankan sudo apt-get install llvm-3.2
berakhir dengan 'paket tidak ditemukan'.
Mencoba sudo apt-get install llvm
atau sudo apt-get install clang
menginstal versi 2.9. Google membantu saya dengan ini
sudo add-apt-repository ppa:kxstudio-team/builds
sudo apt-get update
Sekarang sudo apt-get install llvm-3.2 clang-3.2
bekerja. Tetapi ketika saya menjalankan make di folder Halide saya masih mendapatkan dentang: Perintah tidak ditemukan.
Jawaban:
Ok, jadi saya berhasil dikompilasi Halide pada Ubuntu 13.04 dengan menginstal
llvm
,clang
danbuild-essential
. Satu-satunya dugaan saya tentang masalah Anda adalah bahwa LLVM atau dentang dari PPA yang Anda instal mungkin tidak berfungsi dengan benar. Tampaknya sebenarnya mungkin untuk mendapatkan LLVM 3.2 dari Ubuntu untuk 12.04, melalui apa yang dikenal sebagai arsip "yang diusulkan". Anda dapat mencoba membersihkan LLVM yang Anda miliki dan menginstalnya dari "yang diusulkan". Saya akan menjelaskan cara melakukannya di bawah. Karena Anda menyebutkan bahwa Anda baru di Ubuntu (dalam versi pertanyaan awal), saya pertama-tama akan menjelaskan apa yang setiap perintah Anda telah gunakan, sebaik yang saya bisa.Jadi,
sudo apt-get install llvm-3.2
cobalah untuk menginstal paket bernamallvm-3.2
dari repositori saat ini yang diaktifkan pada sistem Anda. Dalam kasus Anda, itu tidak dapat ditemukan, jadi perintahnya gagal.sudo apt-get install llvm
menginstalllvm
paket, yang mungkin merupakan paket khusus yang hanya menggunakan LLVM terbaru yang tersedia di repositori standar Anda. Dalam kasus Anda, itu 2.9. Gagasan yang sama berlaku untuksudo apt-get install clang
.sudo add-apt-repository ppa:kxstudio-team/builds
menambahkan apa yang disebut arsip paket pribadi atau PPA ke sistem Anda. Ini memungkinkan Anda mendapatkan lebih banyak perangkat lunak dari repositori lain , atau sumber perangkat lunak. Lihat https://help.launchpad.net/Packaging/PPA untuk info lebih lanjut. Akhirnya,sudo apt-get update
memberitahu Ubuntu untuk mendapatkan informasi tentang paket apa yang tersedia dari repositori yang saat ini tersedia. Anda dapat melihat di http://www.debian.org/doc/manuals/debian-faq/ch-pkgtools.en.html untuk info lebih lanjut tentang manajemen paket di Debian (sebagian besar juga berlaku untuk Ubuntu, karena Ubuntu didasarkan pada Debian).Jadi, langkah-langkah untuk menghapus paket yang Anda dapatkan dan menginstal versi yang tersedia dari yang diusulkan:
sudo apt-get purge llvm-3.2 clang-3.2
untuk menghapus LLVM sepenuhnya dan mendentang dari sistem Anda.sudo add-apt-repository --remove ppa:kxstudio-team/builds
untuk menghapus PPA dari sistem Anda.llvm-3.2
paket Ubuntu yang sebenarnya , dan yang kedua akan menjaga sistem dari mencoba untuk memutakhirkan semuanya ke versi yang Diajukan.sudo apt-get update
untuk menarik informasi tentang paket dan versi apa yang sekarang tersedia.sudo apt-get install llvm-3.2/precise-proposed
untuk menginstal LLVM 3.2, dan gunakansudo apt-get install clang/precise-proposed
untuk menginstal Clang 3.0 (saya pikir itu versi yang harus Anda dapatkan).sudo ln -s /usr/bin/llvm-config-3.2 /usr/local/bin/llvm-config
untuk membuat sistem memperlakukanllvm-config-3.2
(yangllvm-config
datang denganllvm-3.2
) sebagaillvm-config
. Lebih lengkapnya, ini menciptakan tautan simbolik (atau symlink) ke llvm-config-3.2 di tempat lain di mana Ubuntu akan mencari program (info lebih lanjut: ln , FHS , PATH ). Jadi, ketika Anda menjalankan "llvm-config", Ubuntu akan menemukan symlink dan menjalankan program yang ditunjuknya (llvm-config-3.2
).Semoga itu berhasil. Saya belum menguji semua ini, jadi gunakan dengan risiko Anda sendiri, dll. Saya cukup yakin, bagaimanapun, itu seharusnya tidak melakukan sesuatu yang mengerikan.
EDIT: Catat itu
llvm
danllvm-3.2
independen.llvm
tergantung padallvm-2.9
( lihat di sini ), sementarallvm-3.2
terpisah ( lihat dependensi di sini )Juga, saya tidak yakin apakah Anda tahu tentang penyelesaian tab ; akan sangat membantu jika Anda mencari perintah tetapi tidak cukup tahu nama (misalnya, dalam hal ini, mungkin akan ditampilkan yang
llvm-config
dipanggilllvm-config-3.2
).sumber
llvm
paket (sudo apt-get purge llvm
) sebelum melakukannya untuk memastikan Anda mendapatkan versi yang benar. Anda selalu dapat memeriksa file apa yang Anda coba jalankan dengan menggunakan perintahwhich [command]
. Misalnya,which llvm-config
harus membaca/usr/local/bin/llvm-config
. Lihat en.wikipedia.org/wiki/Which_%28Unix%29 untuk info lebih lanjut.llvm
paket untuk Ubuntu 12.04 adalahllvm-2.9
,llvm-config
perintah itu ditautkan kellvm-config
dari versi yang sama, yaitullvm-config-2.9
,. Di Ubuntu 13.04 dan 13.10,llvm
paket menginstal LLVM 3.2, dan saya berharap untuk mengaturnyallvm-config-3.2
sepertillvm-config
yang dilakukan di Ubuntu 13.10.