maaf untuk pertanyaan noob, tetapi ketika saya mencoba
sudo apt-get install Linux-kernel-devel
Saya mendapatkan yang berikut ini:
sudo apt-get install linux-kernel-devel
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package linux-kernel-devel
Saya sudah mencoba yang berikut ini:
sudo apt-get install linux-headers-$(uname -r)
sudo apt-get install build-essentials
sudo apt-get install Linux-headers-generic
tanpa sukacita ... ada saran?
installation
kernel
package-management
paschwan
sumber
sumber
Jawaban:
Ringkasan bisnis plan
Anda mungkin ingin menginstal paket yang disebut
linux-headers-generic
.Jika berjalan
uname -r
memberi Anda sesuatu selaingeneric
setelah nomor versi, gantikan dengangeneric
inlinux-headers-generic
. (Ini mungkinserver
ataugeneric-pae
pada beberapa instalasi dari beberapa rilis Ubuntu, dan ada beberapa "rasa" kernel lainnya.)Karena Anda kemungkinan besar membutuhkan ini sehingga Anda dapat membangun driver (yang mungkin otomatis, Anda mungkin tidak "membangun sendiri"), itu ide yang baik untuk menginstal
build-essential
juga untuk membuatnya sehingga Anda mungkin akan memiliki semua alat yang diperlukan .Penjelasan Lengkap
Sepengetahuan saya, tidak ada sistem operasi yang memiliki paket yang disebut
Linux-kernel-devel
. Ini karena dua alasan:Ini umum untuk paket yang berhubungan dengan kernel pada sistem yang menggunakan Red Hat Package Manager (
rpm
) dan utilitas terkait untukkernel
mengatasnamakan paket mereka. Misalnya, Mageia memiliki sejumlah paket yang namanya dimulaikernel
dan diakhiridevel
. Paket-paket ini hampir selalu (pada Mageia dan OS apa pun yang memilikinya) menyediakan file header diperlukan untuk membangun driver dari sumber untuk digunakan dengan kernel. Mereka juga dapat menyediakan utilitas terkait untuk memfasilitasi. Paket-paket ini:Di Ubuntu, seperti dapat dilihat dalam daftar di sini , paket-paket yang menyediakan header kernel memiliki nama yang dimulai dengan
linux-headers
. Biasanya paket yang benar untuk diinstal adalahlinux-headers-generic
. Namun, untuk memastikan paket apa yang harus diinstal untuk mendapatkan header yang sesuai dengan kernel yang sedang Anda jalankan, jalankan:Anda akan mendapatkan output yang terlihat seperti:
Artinya, Anda akan memiliki nomor versi (yang akan menyertakan
.
karakter dan biasanya setidaknya satu-
), diikuti oleh-
, diikuti oleh satu atau lebih kata yang mengindikasikan jenis kernel apa yang Anda jalankan.Jika Anda hanya ingin header untuk versi tertentu Anda kebetulan berjalan sekarang, Anda bisa menginstal paket yang namanya
linux-headers-*
mana*
digantikan oleh output penuhuname -r
. Misalnya, di sistem saya, saya bisa menjalankan:Saya bahkan dapat mengotomatisasi:
Pendekatan-pendekatan ini setara, tetapi biasanya bukan cara terbaik untuk melakukannya.
Sebagai gantinya, Anda biasanya ingin menginstal metapackage yang selalu menyediakan header kernel terbaru sebagai pembaruan (dengan terus-menerus bergantung pada paket header apa pun yang terbaru). Ini sejajar dengan cara Anda mengkompilasi, menjalankan kernel diinstal dan diperbarui. Untuk melakukan itu, lihat saja pada bagian
uname -r
keluaran setelah nomor versi. Artinya, jikauname -r
memberi Anda3.5.0-36-generic
, ambil sajageneric
bagian itu.Kemudian instal paket yang disebut di
linux-headers-*
mana*
diganti oleh bagian itu. Jadi, pada sistem saya, itu akan menjadilinux-headers-generic
dan satu cara saya dapat menginstalnya adalah dengan menjalankan:Bagi kebanyakan orang itu
linux-headers-generic
, tetapi tergantung pada apa Ubuntu melepaskan Anda menjalankan, apa arsitektur dan jenis perangkat Anda menjalankannya pada, dan bagaimana ia diinstal dan dikonfigurasi, kemungkinan lain termasukgeneric-pae
,highbank
,omap
,server
, danvirtual
.Paket Terkait
File header memfasilitasi pengembangan dan penyusunan / pengembangan perangkat lunak yang menggunakan fasilitas yang disediakan oleh perangkat lunak yang file headernya digunakan. Alasan paling umum Anda mungkin perlu header kernel adalah jika Anda akan membangun driver (modul kernel) dari kode sumber. Beberapa aplikasi, seperti VMware dan VirtualBox, kadang-kadang akan memerlukan ini, dan akan mengotomatisasi pembuatannya sendiri.
Selain file header, untuk membangun perangkat lunak kompiler dan alat-alat lain diperlukan. Untuk memaksimalkan kemungkinan Anda memiliki alat yang diperlukan, sebaiknya instal
build-essential
paket.Tidak umum bagi siapa pun untuk membutuhkan kode sumber kernel penuh yang sebenarnya (kecuali, tentu saja, Anda berencana membangun kernel dari sumber). Tetapi jika Anda memang membutuhkannya, Anda harus menginstal paket lain juga. Di Ubuntu paket untuk kode sumber kernel lengkap disebut
linux-source
. (Ini sesuai dengan konvensi penamaan paket Debian / Ubuntu yang menyediakan bagian substantif dari kernel Linuxlinux
daripadakernel
.)Jika Anda Masih Mengalami Kesulitan
Jika Anda mencoba menginstal salah satu dari paket ini tetapi mengalami masalah, dan Anda ingin bantuan, maka Anda harus memasukkan teks lengkap dan tepat dari Terminal, termasuk baris tempat Anda mengetik perintah. Cara terbaik untuk menyediakan ini adalah dengan mengedit pertanyaan Anda, tetapi jika terlalu lama, Anda dapat menempelkannya di suatu tempat seperti http://paste.ubuntu.com dan berikan kami URL tempat kami dapat mengaksesnya.
Jika Anda mengomentari pertanyaan ini, saya akan diberi tahu. Anda dapat mengedit pertanyaan Anda dan juga berkomentar di sini untuk menarik perhatian pada informasi yang Anda berikan dalam pertanyaan Anda. (Informasi penting sebaiknya disimpan dalam pertanyaan dan jawaban.) Semoga berhasil!
sumber
Seperti yang dikatakan dalam laporan (E: Tidak dapat menemukan paket linux-kernel-devel) Tidak ada paket seperti itu. Anda dapat menginstal setiap versi kernel yang Anda inginkan dengan mengunduh paket-paket kernel debian dari sini
Sebagai contoh; kami ingin menginstal kernel 3.9.8 (arsitektur i386); Unduh semua paket ** i386.deb dan juga paket * * * all.deb ke folder. Masuk ke folder dengan perintah cd di terminal;
Ini akan menginstal versi kernel yang Anda inginkan. Anda dapat menganalisis versi-versi dari kernel utama dan versi jangka panjang di situs ini
sumber
Anda harus memetakan diri Anda sendiri deb mana yang Anda butuhkan, tetapi ada utang yang Anda butuhkan dalam pembuatan kernel Ubunut .
Jujur saya pertama kali akan memeriksa
sudo apt-get update
dan kemudiansudo apt-get dist-upgrade
untuk memastikan Anda menjalankan kernel terbaru dan tidak perlu melakukan ini lagi segera.Selanjutnya lihat daftar kernel build untuk versi Anda yang cocok dengan Anda
uname -r
. Anda perlu melihat di masing-masing build.log build untuk mengetahui versi kepala mana yang akan mereka buat pemetaannya. Saya memiliki 3.5.0-34 # 55 terdaftar sebagai kernel saya tetapi ini benar-benar peta untuk membangun 3.5.7.14-quantal . Instal semua utang yang terkait dengan versi itu untuk mendapatkan tajuk dan semacamnya, dan pastikan Anda memiliki alat bantu bangunan Andasudo apt-get install build-essential
Jarak tempuh Anda mungkin sangat tergantung pada apa yang Anda rencanakan dengan file devel.
sumber
linux-kernel-devel adalah nama paket SUSE / Redhat yang menyediakan hal-hal seperti genksyms.
Google yang sangat cepat menunjukkan bahwa linux-headers-generic menyediakan genksym pada Debian / Ubuntu.
sumber