Linux / compilador-gcc5.h: Nenhum arquivo ou diretório

1

Eu tive um problema ao compilar um agendador de kernel para testar

o erro de compilação

 linux-2.6.32-rc3/include/linux/compiler-gcc.h:86:30: fatal error: linux/compiler-gcc5.h: No such file or directory

Eu recebo este erro porque o kernel é muito antigo?

kernel

uname -r

4.1.0-3-generic

gcc

gcc --version

gcc-5.real (Ubuntu 5.2.1-22ubuntu2) 5.2.1 20151010

Então, se este é o motivo do erro de compilação - quais soluções estão disponíveis? Devo, por exemplo, atualizar o kernel - como faço isso? Ou regredir para uma versão anterior do gcc? Outras sugestões?

    
por Björn Hallström 10.04.2016 / 18:14

3 respostas

4

Qualquer kernel anterior a 3.18 não irá compilar usando o gcc 5. Use um compilador antigo.

    
por 11.04.2016 / 11:56
0

Você não tem os fontes do kernel. O compilador está procurando por esse arquivo de cabeçalho.

Este link lhe dará uma versão da árvore de código-fonte do kernel que deve ser basicamente semelhante ao que você está procurando.

link

    
por 10.04.2016 / 18:21
0

é possível instalar o gcc-4.9 para poder compilar os kernels 3.xx.

mas, a próxima pergunta seria: " como mudar para o gcc-4.9 para compilação do kernel? "

em vez disso, a resposta mais simples estaria aqui - basta baixar o arquivo que faltava na pasta include/linux

infelizmente o gcc5 não gosta da construção " extern inline ", então você terá que continuar com grep -sRl "extern inline" .|xargs sed -i -e "s/extern inline/inline/g" para todo seu código-fonte do kernel antes de prosseguir com qualquer compilação

    
por 14.09.2017 / 19:36