Detalhes deste pacote estão localizados em Seção 8.18.2, “Conteúdo do Binutils.”
O pacote Binutils contém um vinculador, um montador e outras ferramentas para manusear arquivos objeto.
Volte e releia as observações na seção intitulada Instruções Gerais de Compilação. Entender as observações rotuladas como importantes pode salvar você de um monte de problemas depois.
É importante que o Binutils seja o primeiro pacote compilado, pois ambos a Glibc e o GCC realizam vários testes sobre o vinculador e o montador disponíveis para determinar quais dos próprios recursos deles habilitar.
A documentação do Binutils recomenda construir o Binutils em um diretório dedicado à construção:
mkdir -v build cd build
Para a finalidade de que os valores da UPC listados no resto do
livro sejam de algum uso, meça o tempo que leva para construir
esse pacote desde a configuração até, e incluindo, a primeira
instalação. Para fazer isso facilmente, encapsule os comandos em
um comando time
desta forma: time { ../configure
... && make && make install; }
.
Agora prepare o Binutils para compilação:
../configure --prefix=$LFS/tools \ --with-sysroot=$LFS \ --target=$LFS_TGT \ --disable-nls \ --enable-gprofng=no \ --disable-werror
O significado das opções do configure:
--prefix=$LFS/tools
Isso diz para o script configure para preparar para instalar
os aplicativos do Binutils no diretório $LFS/tools
.
--with-sysroot=$LFS
Para compilação cruzada, isso diz ao sistema de construção para procurar em $LFS pelas bibliotecas alvo de sistema conforme necessário.
--target=$LFS_TGT
Por causa da descrição de máquina na variável LFS_TGT
ser ligeiramente diferente do valor
retornado pelo script config.guess, essa chave
dirá ao script configure para ajustar o
sistema de construção do binutils para construir um
vinculador cruzado.
--disable-nls
Isso desabilita internacionalização, uma vez que i18n não é necessária para as ferramentas temporárias.
--enable-gprofng=no
Isso desabilita a construção do gprofng o qual não é necessário para as ferramentas temporárias.
--disable-werror
Isso evita que a construção pare no caso de existirem alertas originários do compilador do anfitrião.
Continue compilando o pacote:
make
Instale o pacote:
make install
Detalhes deste pacote estão localizados em Seção 8.18.2, “Conteúdo do Binutils.”