Estou recebendo este erro:
Makefile: 181: *** Erro: não foi possível encontrar as fontes do seu kernel Linux atual. Especifique KERN_DIR = e execute Make novamente. Pare.
Basicamente eu estou fazendo:
$ sudo /etc/init.d/vboxdrv setup
Removing existing VirtualBox non-DKMS kernel modules [ OK ]
Building the VirtualBox Guest Additions kernel modules
The headers for the current running kernel were not found. If the following
module compilation fails then this could be the reason.
The missing package can be probably installed with
yum install kernel-devel-2.6.32-573.18.1.el6.x86_64
Building the main Guest Additions module [FAILED]
(Look at /var/log/vboxadd-install.log to find out what went wrong)
E o erro é:
Makefile: 181: *** Erro: incapaz de encontrar as fontes do seu kernel Linux atual. Especifique KERN_DIR = e execute Make novamente. Pare
O que é esse erro e como corrigi-lo?
apt-cache search linux-headers-$(uname -r)
não retorna nada para mim, embora eu tenha feito os comandos acima.apt-get update && apt-get -y dist-upgrade
.Como corrigir isso no Fedora / CentOS
Primeiro, verifique se seus pacotes instalados (especialmente o kernel) estão atualizados:
Se ele atualizar a versão do kernel, você precisará reiniciar para que
uname -r
corresponda ao nome do diretório/usr/src/kernels/
. EntãoApós esta compilação, os módulos do kernel do VirtualBox devem funcionar sem problemas.
Fontes:
fonte
sudo -s
seguido porexport KERN_DIR=/usr/src/kernels/XXX
mas eu tenho certeza que há uma maneira melhor de persistir variáveis em modo sudosource ~/.bashrc
para definir KERN_DIR no ambiente atual sem precisar reiniciar.uname -r
/ >> ~ / .bashrc@hhh Você deve procurar apenas
linux-headers
e encontrar o melhor para sua arquitetura. No meu caso:Portanto, no meu caso, tenho uma arquitetura de 64 bits, tenho que instalar
linux-headers-amd64
.Outra coisa é
apt-get add
que não existe. Substituaapt-get
porapt-key
.fonte
Eu tive o erro KERN_DIR no CentOS. Analisou o script de instalação do shell e descobriu que ele define KERN_DIR como / usr / src / kernels. Então "uname -r" mostra que eu estava executando uma versão inferior do kernel ... que o código fonte em / usr / src / kernels.
Eu olhei para /boot/grub/menu.lst ... e confirmei a incompatibilidade do kernel. Esquisito.
Então, a correção foi ... "yum -y update kernel" e reinicie. As ferramentas VMWare foram instaladas.
fonte
Experimentar:
Então
Em seguida, reinicie sua máquina
fonte
apt-get
, nãoyum
.O erro significa que
vboxdrv
/vboxadd
não é possível encontrar as fontes do kernel.O script espera que a
/lib/modules/$(uname -r)/build
pasta aponte para a/usr/src/kernels/$(uname -r)
qual deve haver o Makefile onde ele pode executar akernelrelease
tarefa, para que possa ser comparado com a versão atual do kernel instalada (uname -r
).Portanto, se este comando falhar:
você deve instalar os cabeçalhos do Linux:
Para mais detalhes, consulte este post .
fonte
Para qualquer sistema operacional, você precisa garantir que todos os pacotes necessários estejam instalados. No meu caso no Debian, estavam faltando os pacotes dkms e linux-headers-generic.
Para obter instruções completas, consulte esta postagem no fórum do VirtualBox .
fonte