Estou quase na mesma posição com você. Seguindo esta istructions, tive sucesso com a criação do próprio kernel e um único módulo.
Eu adicionei três etapas (40 ~ 42) ao artigo principal para fazer o Eclipse compilar um driver específico, não um kernel inteiro.
- Faça o download e instale o Eclipse mais o CDT.
- Configure e crie seu kernel para definir
CONFIG_*e gerarautoconf.h. Isso pode ser feito antes ou depois de baixar e instalar o Eclipse. - Verifique se você tem a fonte correta do kernel (por exemplo, verifique se está na ramificação git à direita). Se você verificar outra ramificação mais tarde, tudo bem, mas será necessário indexar novamente a origem e isso levará cerca de 20 minutos.
- Inicie o Eclipse.
- Clique em
File- >New- >C Project - Preencha um nome de projeto como
my_kernel - Desmarque a caixa Usar local padrão e digite o diretório raiz do seu kernel na caixa Local.
- No painel Tipo de projeto:, clique no projeto Makefile e selecione Projeto vazio
- No lado direito, selecione
Linux GCC - Clique em
Advanced settings... e uma caixa de diálogo Propriedades será exibida. - Selecione Recurso à esquerda e, na seção Codificação do arquivo de texto, selecione Outros e
ISO-8859-1na caixa e clique em Aplicar - Abra a seleção
C/C++ Generalà esquerda. - Clique em
Preprocessor Include Paths - Selecione
GNU Cna lista Idiomas - Selecione
CDT User Setting Entriesna lista Entradas de configuração - Clique em
Add.... Escolha Arquivo de Macros de Pré-processador no menu suspenso superior esquerdo, Caminho do Projeto no menu suspenso superior direito e digiteinclude/generated/autoconf.hna caixa de texto Arquivo. (Nota: para kernels mais antigos [pré-2.6.36?], A localização deautoconf.héinclude/linux/autoconf.h) - Inclua também outros arquivos de macros que você está usando.
- Clique no Indexador
- Marque a caixa de configurações específicas Ativar projeto.
- Desmarque os arquivos de origem do índice não incluídos na compilação
- Limpe a caixa inicial Arquivos para indexar.
- Clique em Caminhos e Símbolos à esquerda.
- Selecione a guia Incluir e, em seguida, selecione
GNU C - Clique em
Add... - Clique em
Workspace... e selecione o diretório de inclusão do seu kernel - Faça outra adição, espaço de trabalho e adicione
arch/architecture/include, por exemplo,arch/powerpc/include - Clique na guia
# Symbols - Clique em
Add... - Defina o nome para
__KERNEL__ - Defina o valor como
1e clique em OK - Clique na guia Localização da origem
- Clique no twisty para o seu projeto.
- Selecione o item Filtro e clique em Editar filtro ...
- Clique em Adicionar vários ... e selecione todos os diretórios arch / * na origem do kernel que não serão usados (ou seja, todos os que não forem da arquitetura que você está usando)
- Clique em OK e em OK novamente para ignorar esse diálogo.
- Clique em OK na caixa de diálogo Propriedades.
- Clique em Concluir na caixa de diálogo Projeto C.
- Clique com o botão direito do mouse no projeto e selecione Índice e selecione Reconstruir
- Demorará cerca de 20 minutos para ser concluído.
- Abra a configuração do seu projeto, vá para o
C/C++ build -> Behaviour (tab) - Verifique a caixa de seleção
Build (Incremental buil)e adicione o caminho do módulo à caixa de texto (no meu casoM=drivers/servo/dynamixel). - Quando seu módulo estiver pronto e você quiser compilar o kernel, repita 41 e substitua
M=..porall.