Ok, jadi saya berhasil dikompilasi Halide pada Ubuntu 13.04 dengan menginstal llvm
, clang
dan build-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 bernama llvm-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
menginstal llvm
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 untuk sudo 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:
- Gunakan
sudo apt-get purge llvm-3.2 clang-3.2
untuk menghapus LLVM sepenuhnya dan mendentang dari sistem Anda.
- (Opsional) Gunakan
sudo add-apt-repository --remove ppa:kxstudio-team/builds
untuk menghapus PPA dari sistem Anda.
- Ikuti instruksi di https://wiki.ubuntu.com/Testing/EnableProposed untuk mengaktifkan arsip yang Diajukan (tepat di bagian atas halaman), dan juga ikuti instruksi untuk "Pembaruan selektif dari -proposed". Bagian pertama akan mengaktifkan versi
llvm-3.2
paket Ubuntu yang sebenarnya , dan yang kedua akan menjaga sistem dari mencoba untuk memutakhirkan semuanya ke versi yang Diajukan.
- Gunakan
sudo apt-get update
untuk menarik informasi tentang paket dan versi apa yang sekarang tersedia.
- Gunakan
sudo apt-get install llvm-3.2/precise-proposed
untuk menginstal LLVM 3.2, dan gunakan sudo apt-get install clang/precise-proposed
untuk menginstal Clang 3.0 (saya pikir itu versi yang harus Anda dapatkan).
- LANGKAH BARU: Lakukan
sudo ln -s /usr/bin/llvm-config-3.2 /usr/local/bin/llvm-config
untuk membuat sistem memperlakukan llvm-config-3.2
(yang llvm-config
datang dengan llvm-3.2
) sebagai llvm-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
).
- Lihat apakah semuanya mengkompilasi dengan benar sekarang.
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
dan llvm-3.2
independen. llvm
tergantung pada llvm-2.9
( lihat di sini ), sementara llvm-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
dipanggil llvm-config-3.2
).