Primeira edição
Você está perdendo o pacote kernel-headers
. Você precisa deles para compilar os módulos do kernel.
yum install kernel-headers
Assumindo onde você baixou os drivers . Quando os descompactei em um sistema CentOS 6.4, recebi o seguinte erro:
$ cd jmebp-1.0.8.5
$ ls
CHANGELOG jme.c jme.h Makefile scripts
$ make
make: *** /lib/modules/2.6.32-279.14.1.el6.x86_64/build: No such file or directory. Stop.
make: *** [modules] Error 2
Depois de instalar o pacote kernel-headers
, executei make
uma segunda vez:
$ make
make: *** /lib/modules/2.6.32-279.14.1.el6.x86_64/build: No such file or directory. Stop.
make: *** [modules] Error 2
Ainda é um problema? Depurando ainda mais eu descobri o meu outro problema, que você pode encontrar também, então eu estou documentando isso abaixo, apenas no caso.
segunda edição
O link no diretório do kernel parecia estar quebrado.
$ pwd
/lib/modules/2.6.32-279.14.1.el6.x86_64
$ ls -l | grep build
lrwxrwxrwx 1 root root 51 Dec 15 14:49 build -> ../../../usr/src/kernels/2.6.32-279.14.1.el6.x86_64
lrwxrwxrwx 1 root root 5 Dec 15 14:50 source -> build
$ ls -l build/
ls: cannot access build/: No such file or directory
Opa, versão incorreta do kernel-headers
e kernel-devel
da versão do kernel. Estamos atualmente executando esta versão do kernel:
$ uname -r
2.6.32-279.14.1.el6.x86_64
Mas acabamos de instalar os pacotes kernel-headers
e kernel-devel
para esta versão:
2.6.32-358.6.1.el6.x86_64
Então, vamos instalar essa versão do kernel também e reinicializar para que possamos usar o kernel mais novo:
$ yum update kernel
Após a reinicialização, tudo fica muito melhor:
$ ls
CHANGELOG jme.c jme.h Makefile scripts
$ make
make[1]: Entering directory '/usr/src/kernels/2.6.32-358.6.1.el6.x86_64'
CC [M] /home/sam/jmebp/jmebp-1.0.8.5/jme.o
Building modules, stage 2.
MODPOST 1 modules
CC /home/sam/jmebp/jmebp-1.0.8.5/jme.mod.o
LD [M] /home/sam/jmebp/jmebp-1.0.8.5/jme.ko.unsigned
NO SIGN [M] /home/sam/jmebp/jmebp-1.0.8.5/jme.ko
make[1]: Leaving directory '/usr/src/kernels/2.6.32-358.6.1.el6.x86_64'
$ ls
CHANGELOG jme.c jme.h jme.ko jme.ko.unsigned Makefile scripts
Agora vemos o módulo do kernel jme.ko. Para instalá-lo:
make install