Para construir um módulo do kernel, você precisa de mais do que uma fonte de kernel descompactada. Você precisa de alguns programas complementares e arquivos de cabeçalho gerados durante a construção do kernel. O makefile está procurando modpost
no lugar certo, mas ainda não está lá. As distribuições normalmente enviam isso em um pacote chamado linux-headers-VERSION
ou kernel-headers-VERSION
ou algo semelhante.
Primeiro, você precisa configurar o kernel. A versão do kernel e a configuração do kernel devem coincidir com o kernel com o qual você vai executar o módulo. Se você tiver o arquivo .config
de algum lugar, copie-o para o diretório do kernel. Em seguida, construa os arquivos necessários para construir módulos extras, execute o seguinte comando no diretório de origem do kernel:
make modules_prepare
Em seguida, você pode ir para o diretório de origem de um módulo e executar
make -C ../linux M=$PWD/src
Veja Construindo módulos externos na documentação do kernel ( Documentation/kbuild/modules.txt
) para mais informações.