Gambiarra com o Kernel Headers
Dica publicada em Linux / Kernel
Gambiarra com o Kernel Headers
Testado no Slackware 11.0.
Já vi muitas pessoas com problemas com o kernel-headers quando atualiza seu sistema para um kernel mais novo. Infelizmente o tio Patrick não disponibiliza kernel-headers das versões mais atuais do kernel, disponibiliza somente os que já vem no cd.
Bom, então vamos lá. A dica é o seguinte.
Entre no diretório /usr/src e crie um link simbólico chamado 'linux' apontando para versão do kernel que você está usando. Exemplo:
# ls -la
Para criar o link é bem simples:
# ln -sf /usr/src/linux-2.6.20.6 /usr/src/linux
Não se esqueça de substituir o 'linux-2.6.20.6' pelo diretório do kernel-source que você está usando.
Agora vamos ao kernel-headers:
A seqüência de comandos é o seguinte:
# cd /usr/include
# ln -sf /usr/src/linux/include/linux
# ln -sf /usr/src/linux/include/asm-generic
# ln -sf /usr/src/linux/asm-i386 asm
Dentro de /usr/include você está criando o link simbólicos pro seu source, o que substitui a necessidade do kernel-headers.
Sempre que for usar uma outra versão do kernel, basta refazer o link dentro de /usr/src/ e por ele para apontar para versão do kernel que você está usando.
Tudo muito simples.
Por: Lucas Allan a.k.a Shaman286
Já vi muitas pessoas com problemas com o kernel-headers quando atualiza seu sistema para um kernel mais novo. Infelizmente o tio Patrick não disponibiliza kernel-headers das versões mais atuais do kernel, disponibiliza somente os que já vem no cd.
Bom, então vamos lá. A dica é o seguinte.
Entre no diretório /usr/src e crie um link simbólico chamado 'linux' apontando para versão do kernel que você está usando. Exemplo:
# ls -la
total 42416 drwxr-xr-x 7 root root 264 2007-04-14 14:05 ./ drwxr-xr-x 20 root root 552 2006-11-05 11:37 ../ drwxr-xr-x 2 root root 696 2007-03-10 17:04 ddclient-3.7.1/ lrwxrwxrwx 1 root root 14 2007-04-11 23:10 linux -> linux-2.6.20.6/ drwxr-xr-x 19 root root 736 2006-09-20 04:53 linux-2.6.18/ drwxr-xr-x 20 root root 1264 2007-04-12 01:20 linux-2.6.20.6/ -rw-r--r-- 1 root root 43388391 2007-04-06 17:18 linux-2.6.20.6.tar.bz2 drwxr-xr-x 7 root root 168 2003-10-29 03:08 rpm/ drwxr-xr-x 9 root root 312 2006-11-05 11:37 slackbuilds/Observe que o 'linux' é um link simbólico apontando para o source que do kernel que estou usando atualmente (2.6.20.6).
Para criar o link é bem simples:
# ln -sf /usr/src/linux-2.6.20.6 /usr/src/linux
Não se esqueça de substituir o 'linux-2.6.20.6' pelo diretório do kernel-source que você está usando.
Agora vamos ao kernel-headers:
A seqüência de comandos é o seguinte:
# cd /usr/include
# ln -sf /usr/src/linux/include/linux
# ln -sf /usr/src/linux/include/asm-generic
# ln -sf /usr/src/linux/asm-i386 asm
Dentro de /usr/include você está criando o link simbólicos pro seu source, o que substitui a necessidade do kernel-headers.
Sempre que for usar uma outra versão do kernel, basta refazer o link dentro de /usr/src/ e por ele para apontar para versão do kernel que você está usando.
Tudo muito simples.
Por: Lucas Allan a.k.a Shaman286
Eu estava com o mesmo problema descrito nesta discussão: http://lists.freedesktop.org/archives/hal/2005-January/001812.html
E sua dica me salvou. :-)
Muito obrigado mesmo.