今天下載安裝intel最新的40G以太網適配器驅動程序,安裝始終無法進行,總提示以下錯誤:
[root@aliyun66 src]# make install common.mk:101: *** Kernel header files not in any of the expected locations. common.mk:102: *** Install the appropriate kernel development package, e.g. common.mk:103: *** kernel-devel, for building kernel modules and try again. Stop.
根據提示應該是kernel-header, kernel-devel, 或者是開發環境包沒有安裝?沒有進一步的提示了,但是檢查如下,一切正常:
[root@aliyun66 tmp]# rpm -q kernel-headers kernel-devel kernel-headers-2.6.32-504.el6.x86_64 kernel-devel-2.6.32-696.1.1.el6.x86_64
很奇怪的是,使用yum安裝所有跟kernel相關的包後,再對驅動進行安裝,則安裝正常
之後蹂躪度娘,終於發現一哥們跟我遇到類似狀況:
主要是說,kernel-devel的版本與當前系統內核版本不一致導致,再次仔細對比發現:
[root@aliyun66 tmp]# rpm -q kernel-headers kernel-devel kernel-headers-2.6.32-504.el6.x86_64 kernel-devel-2.6.32-696.1.1.el6.x86_64 [root@aliyun66 tmp]# [root@aliyun66 tmp]# uname -r 2.6.32-504.el6.x86_64
上面內容可以看出,系統運行版本爲:2.6.32-504,而kernel-devel版本卻爲2.6.32-696,確實不匹配,kernel-devel版本要比內核版本新一些,於是開始對kernel-devel版本進行降級,查看發現光盤中有2.6.32-504版本的kernel-devel(這樣基本可以判定的是,在系統安裝完成之後,因爲要安裝某些程序,所以使用yum對kernel-devel進行了升級,導致的此問題)
[root@aliyun66 Packages]# pwd /mnt/Packages [root@aliyun66 Packages]# ls |grep kernel-devel kernel-devel-2.6.32-504.el6.x86_64.rpm [root@aliyun66 Packages]# yum localinstall kernel-devel-2.6.32-504.el6.x86_64.rpm Loaded plugins: fastestmirror, security Setting up Local Package Process Examining kernel-devel-2.6.32-504.el6.x86_64.rpm: kernel-devel-2.6.32-504.el6.x86_64 Marking kernel-devel-2.6.32-504.el6.x86_64.rpm to be installed Loading mirror speeds from cached hostfile * base: mirrors.163.com * extras: mirrors.163.com * updates: mirrors.163.com Resolving Dependencies --> Running transaction check ---> Package kernel-devel.x86_64 0:2.6.32-504.el6 will be installed --> Finished Dependency Resolution Dependencies Resolved ================================================================================================= Package Arch Version Repository Size ================================================================================================= Installing: kernel-devel x86_64 2.6.32-504.el6 /kernel-devel-2.6.32-504.el6.x86_64 25 M Transaction Summary ================================================================================================= Install 1 Package(s) Total size: 25 M Installed size: 25 M Is this ok [y/N]: y Downloading Packages: Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction Installing : kernel-devel-2.6.32-504.el6.x86_64 1/1 Verifying : kernel-devel-2.6.32-504.el6.x86_64 1/1 Installed: kernel-devel.x86_64 0:2.6.32-504.el6 Complete! [root@aliyun66 Packages]# rpm -q kernel-devel kernel-devel-2.6.32-504.el6.x86_64 [root@aliyun66 Packages]# uname -r 2.6.32-504.el6.x86_64 [root@aliyun66 Packages]# cd /tmp/i40e-2.0.23/src [root@aliyun66 src]# make install make[1]: Entering directory `/usr/src/kernels/2.6.32-504.el6.x86_64' CC [M] /tmp/i40e-2.0.23/src/i40e_main.o CC [M] /tmp/i40e-2.0.23/src/i40e_ethtool.o CC [M] /tmp/i40e-2.0.23/src/i40e_adminq.o CC [M] /tmp/i40e-2.0.23/src/i40e_common.o CC [M] /tmp/i40e-2.0.23/src/i40e_hmc.o CC [M] /tmp/i40e-2.0.23/src/i40e_lan_hmc.o CC [M] /tmp/i40e-2.0.23/src/i40e_nvm.o CC [M] /tmp/i40e-2.0.23/src/i40e_debugfs.o CC [M] /tmp/i40e-2.0.23/src/i40e_diag.o CC [M] /tmp/i40e-2.0.23/src/i40e_txrx.o CC [M] /tmp/i40e-2.0.23/src/i40e_ptp.o CC [M] /tmp/i40e-2.0.23/src/i40e_client.o CC [M] /tmp/i40e-2.0.23/src/i40e_virtchnl_pf.o CC [M] /tmp/i40e-2.0.23/src/i40e_dcb.o CC [M] /tmp/i40e-2.0.23/src/i40e_dcb_nl.o CC [M] /tmp/i40e-2.0.23/src/i40e_fcoe.o CC [M] /tmp/i40e-2.0.23/src/kcompat.o LD [M] /tmp/i40e-2.0.23/src/i40e.o Building modules, stage 2. MODPOST 1 modules CC /tmp/i40e-2.0.23/src/i40e.mod.o LD [M] /tmp/i40e-2.0.23/src/i40e.ko.unsigned NO SIGN [M] /tmp/i40e-2.0.23/src/i40e.ko make[1]: Leaving directory `/usr/src/kernels/2.6.32-504.el6.x86_64' Copying manpages... Installing modules... make[1]: Entering directory `/usr/src/kernels/2.6.32-504.el6.x86_64' INSTALL /tmp/i40e-2.0.23/src/i40e.ko DEPMOD 2.6.32-504.el6.x86_64 make[1]: Leaving directory `/usr/src/kernels/2.6.32-504.el6.x86_64' Running depmod... Updating initrd... [root@aliyun66 src]# find / -name i40e.ko /lib/modules/2.6.32-504.el6.x86_64/updates/drivers/net/ethernet/intel/i40e/i40e.ko /tmp/i40e-2.0.23/src/i40e.ko
幸好上面提供線索的那哥們因爲此問題糾結了2,3天,而此次我也就糾結2個小時而已
但是另外一個問題是,新版本的kernel-devel難道就不能使用了麼?貌似有點不太科學,還是因爲在編譯驅動程序的時候,Makefile找不到kernel-devel?如何解決?目前沒有頭緒
要麼重新安裝一遍kernel-devel-2.6.32-696試試?
重新安裝後,重啓系統,結果還是不行,如下:
[root@aliyun66 tmp]# yum reinstall kernel-devel.x86_64 Loaded plugins: fastestmirror, security Setting up Reinstall Process Loading mirror speeds from cached hostfile * base: mirrors.163.com * extras: mirrors.163.com * updates: mirrors.163.com Resolving Dependencies --> Running transaction check ---> Package kernel-devel.x86_64 0:2.6.32-696.1.1.el6 will be installed --> Finished Dependency Resolution Dependencies Resolved ============================================================================================================================================================= Package Arch Version Repository Size ============================================================================================================================================================= Reinstalling: kernel-devel x86_64 2.6.32-696.1.1.el6 updates 11 M Transaction Summary ============================================================================================================================================================= Reinstall 1 Package(s) Total download size: 11 M Installed size: 26 M Is this ok [y/N]: y Downloading Packages: kernel-devel-2.6.32-696.1.1.el6.x86_64.rpm | 11 MB 00:04 Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction Installing : kernel-devel-2.6.32-696.1.1.el6.x86_64 1/1 Verifying : kernel-devel-2.6.32-696.1.1.el6.x86_64 1/1 Installed: kernel-devel.x86_64 0:2.6.32-696.1.1.el6 Complete!
[root@aliyun66 src]# make install
common.mk:101: *** Kernel header files not in any of the expected locations.
common.mk:102: *** Install the appropriate kernel development package, e.g.
common.mk:103: *** kernel-devel, for building kernel modules and try again. Stop.
[root@aliyun66 src]#