Gambiarra com o Kernel Headers

Publicado por Lucas Allan em 12/05/2007

[ Hits: 10.387 ]

 


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
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

Outras dicas deste autor

aMSN com suporte a mensagens de voz

Get Tool

Linux no Dell Optiplex 320

Broadcom BCM4312 com driver nativo do Linux

Linux no IntelBras i61

Leitura recomendada

Placa de rede Intel gigabit (Marvell 88E8050)

Diretório /run nas distribuições Linux

Comando para saber as versões de kernel instaladas e remover as antigas no Ubuntu

Compilando um novo kernel herdando as configurações do antigo

Atualizando kernel no Debian 6 - 32 bits

  

Comentários
[1] Comentário enviado por presto em 25/08/2009 - 11:25h

Obrigadão por compartilhar esta dica.

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.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts