Como fazer uma distribuição Linux (parte 1)
Esse artigo é uma adaptação da documentação Komain, que visa apresentar ao leitor os passos necessários para construir uma distribuição Linux a partir dos códigos fontes disponíveis na rede. Esse será um artigo longo, já que meu livro tem 73 páginas e denso, pois muitos conceitos apresentados aqui são extremamente avançados para iniciantes.
Parte 4: Binutils
Vamos compilar agora o binutils, ele deve ser o primeiro pacote a ser compilado, já que o funcionamento do GCC e da GLIBC são muito dependentes desse pacote.
Para melhor organização, guarde os fontes no diretório $ROOT_KMI/fontes e não os apague até o final do artigo, alguns programas serão recompilados inúmeras vezes.
Entre como o usuário komain, crie um diretório chamado $ROOT_KMI/fontes/binutils-build, descompacte o pacote binutils no diretório $ROOT_KMI/fontes:
# mkdir $ROOT_KMI/fontes/binutils-build
# cd $ROOT_KMI/fontes
# tar -xjvf binutils-2.15.tar.bz2
Os desenvolvedores do binutils não recomendam que o programa seja compilado dentro de seu próprio diretório, então:
# cd $ROOT_KMI/fontes/binutils-build
Vamos configurar o pacote:
# ../binutils-2.15/configure --prefix=/temp --disable-nls
Onde:
Continue com:
# make configure-host
Necessário para compilação estática.
# make LDFLAGS='-all-static'
Faz a compilação estática.
Instale o que foi compilado com o comando:
# make install
Agora temos que ajustar algumas coisas e nos livrar de lixos residuais:
# make -C ld clean
Isso vai eliminar todos os binários compilados no diretório ld, importante já que devemos corrigir a biblioteca sob a qual o ld deve ser compilado. Alias, o comando que corrige isso é o comando abaixo:
# make -C ld LDFLAGS='-all-static' LIB_PATH=/temp/lib
Não remova o diretório "binutils-build" ainda! Vamos usá-lo em breve.
Para melhor organização, guarde os fontes no diretório $ROOT_KMI/fontes e não os apague até o final do artigo, alguns programas serão recompilados inúmeras vezes.
Entre como o usuário komain, crie um diretório chamado $ROOT_KMI/fontes/binutils-build, descompacte o pacote binutils no diretório $ROOT_KMI/fontes:
# mkdir $ROOT_KMI/fontes/binutils-build
# cd $ROOT_KMI/fontes
# tar -xjvf binutils-2.15.tar.bz2
Os desenvolvedores do binutils não recomendam que o programa seja compilado dentro de seu próprio diretório, então:
# cd $ROOT_KMI/fontes/binutils-build
Vamos configurar o pacote:
# ../binutils-2.15/configure --prefix=/temp --disable-nls
Onde:
- --prefix=... : define onde o programa vai ser instalado.
- --disable-nls : desliga suporte a internacionalizações, não precisamos disso agora.
Continue com:
# make configure-host
Necessário para compilação estática.
# make LDFLAGS='-all-static'
Faz a compilação estática.
Instale o que foi compilado com o comando:
# make install
Agora temos que ajustar algumas coisas e nos livrar de lixos residuais:
# make -C ld clean
Isso vai eliminar todos os binários compilados no diretório ld, importante já que devemos corrigir a biblioteca sob a qual o ld deve ser compilado. Alias, o comando que corrige isso é o comando abaixo:
# make -C ld LDFLAGS='-all-static' LIB_PATH=/temp/lib
Não remova o diretório "binutils-build" ainda! Vamos usá-lo em breve.
Estou esperando já as outras partes do tutorial, pois acho muito interessante conhecer como nasce um distro.
Além de que está muito bem explicado.
Aguardo a continuação.
Valeu.