O driver requer fontes do Linux

1

Eu tenho um sistema Linux rodando a partir de uma imagem do kernel que compilei as fontes de um repositório Git. Quando estou executando o Linux, gostaria de instalar um driver para algum instrumento da NI. Quando tento executar o instalador, ele me diz que não consegue detectar as origens do kernel do Linux e que elas são necessárias para o driver.

Eu tenho as fontes disponíveis, então isso não é um problema, mas eu não sei como disponibilizá-las para este instalador. As fontes do kernel são tradicionalmente mantidas em algum diretório específico, ou existe alguma variável de ambiente que diz onde elas estão?

Além disso, o que constitui as fontes do kernel? Existe um grande número de arquivos no repositório do Git que eu obtive, mas muitos desses arquivos parecem ser criados ou feitos para diferentes plataformas. O que especificamente é necessário para um módulo do kernel?

    
por Amari 01.11.2017 / 13:47

2 respostas

1

O sistema de compilação do módulo espera encontrar a fonte do kernel configurada (por configuração, quero dizer, com o arquivo .config usado para construir o kernel) em /lib/modules/$(uname -r)/build . A abordagem mais simples para você é criar um symlink lá apontando para o diretório de origem:

sudo ln -s /path/to/kernel/source /lib/modules/$(uname -r)/build
    
por 01.11.2017 / 16:26
0

Tradicionalmente, os fontes do kernel estavam em / usr / src / linux. Se sua distro tiver um pacote de fontes do Linux, é para onde eles provavelmente iriam. Experimente o pacote linux-source nas distribuições baseadas no Debian, ou kernel-devel nas distribuições baseadas no RedHat.

    
por 01.11.2017 / 14:40