歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux系統入門學習:如何在Linux上安裝內核頭文件

Linux系統入門學習:如何在Linux上安裝內核頭文件

日期:2017/2/28 14:24:03   编辑:Linux教程

提問:我在安裝一個設備驅動前先要安裝內核頭文件。怎樣安裝合適的內核頭文件?

當你在編譯一個設備驅動模塊時,你需要在系統中安裝內核頭文件。內核頭文件同樣在你編譯與內核直接鏈接的用戶空間程序時需要。當你在這些情況下安裝內核頭文件時,你必須確保內核頭文件精確地與你當前內核版本匹配(比如:3.13.0-24-generic)。

如果你的內核是發行版自帶的內核版本,或者使用默認的包管理器的基礎倉庫升級的(比如:apt-ger、aptitude或者yum),你也可以使用包管理器來安裝內核頭文件。另一方面,如果下載的是kernel源碼並且手動編譯的,你可以使用make命令來安裝匹配的內核頭文件。

現在我們假設你的內核是發行版自帶的,讓我們看下該如何安裝匹配的頭文件。

在 Debian、Ubuntu 或者 Linux Mint 上安裝內核頭文件

假設你沒有手動編譯內核,你可以使用apt-get命令來安裝匹配的內核頭文件。

首先,使用dpkg-query命令檢查是否有可用的內核頭文件。

$ dpkg-query -s linux-headers-$(uname -r) 

dpkg-query: package 'linux-headers-3.11.0-26-generic' is not installed and no information is available

接著使用下面的命令安裝匹配的內核頭文件。

$ sudo apt-get install linux-headers-$(uname -r) 

驗證頭文件是否成功安裝。

$ dpkg-query -s linux-headers-$(uname -r) 

Package: linux-headers-3.11.0-26-generic
Status: install ok installed

Debian、Ubuntu、Linux Mint默認頭文件在/usr/src下。

在 Fedora、CentOS 或者 RHEL 上安裝內核頭文件

假設你沒有手動編譯內核,你可以使用yum命令來安裝匹配的內核頭文件。

首先,用下面的命令檢查系統是否已經安裝了頭文件。如果下面的命令沒有任何輸出,這就意味著還沒有頭文件。

$ rpm -qa | grep kernel-headers-$(uname -r)

接著用yum命令安裝頭文件。這個命令會自動找出合適的頭文件並安裝。

$ sudo yum install kernel-headers 

驗證包安裝的狀態。

$ rpm -qa | grep kernel-headers-$(uname -r) 

kernel-headers-3.10.0-123.9.3.el7.x86_64

Fedora、CentOS 或者 RHEL上默認內核頭文件的位置是/usr/include/linux

Ubuntu 13.10 (Saucy Salamander) 內核已升級至 Linux Kernel 3.10 RC5 http://www.linuxidc.com/Linux/2013-06/86110.htm

Linux Kernel 3.4.62 LTS 現已經提供下載 http://www.linuxidc.com/Linux/2013-09/90368.htm

如何在Ubuntu 13.10上安裝Linux內核 3.12 http://www.linuxidc.com/Linux/2013-11/92930.htm

如何在Ubuntu 14.10,Ubuntu 14.04及其衍生版本安裝 3.16.7 CKT2內核 http://www.linuxidc.com/Linux/2014-12/110189.htm

Linux Kernel 的詳細介紹:請點這裡
Linux Kernel 的下載地址:請點這裡

Copyright © Linux教程網 All Rights Reserved