Por que instalar o gcc novamente no capítulo 6 linux do zero

2

Estou tentando seguir o livro do LFS, e não consegui me concentrar nessa questão: nós construímos o compilador GCC no capítulo 5 na partição alvo, por que fazemos isso novamente depois de entrar no modo chroot? Qual é o ponto, por que não usar a compilação anterior? Mesma coisa para o GlibC.

    
por imaibou 09.12.2015 / 23:17

2 respostas

2

Acredito que a compilação no chroot verificará se todos os arquivos e programas auxiliares para construir o GCC e o GlibC estão presentes e independentes do "sistema de compilação". Compilar um compilador não é nada simples, geralmente. Acredito que o GCC exigirá bison e flex e todos os tipos de arquivos de cabeçalho, arquivos de configuração e quem sabe o que mais. A compilação chroot é apenas uma etapa intermediária entre o sistema de compilação (que não é o LFS) e a instalação final do LFS, que deve ser de hospedagem própria.

Como o ambiente de tempo de execução do GCC é complicado ( PATH , LD_LIBRARY_PATH e outros itens de configuração) também é possível que alguns efeitos colaterais vazem do compilador GCC inicial. Não consigo encontrar o artigo, mas lembro que pode levar até cinco gerações de compilação de um compilador com a geração compilada anteriormente para obter todos os bugs e dependências estranhos à superfície.

    
por 10.12.2015 / 00:13
0

Como você está digitando um chroot , significa que você tem um sistema vazio sem nada instalado nem funcionando, então você precisa de ferramentas para compilar as coisas que você faz no capítulo 5. Também é a razão pela qual em chroot você está dando /tools/bin/env com PATH apontando para o diretório de ferramentas.

O Capítulo 6 não está fazendo nada além de preencher o chroot baixando os pacotes e instalando-os incluindo gcc e é onde você os compila usando as ferramentas do capítulo 5.

    
por 18.08.2016 / 16:11

Tags