Haiku Book/Compilando a partir dos fontes
Esse capítulo(?) descreve como obter os fontes e compilar o Haiku num sistema GNU/Linux, mas não deve ser difícil de usar como guia para outros sistemas Unix (BSD, MacOS, Solaris,...)
Ferramentas necessárias
editar- Toolchain (gcc e amigos, para o BeOS/Haiku)
- autoconf
- automake
- texinfo
- flex (lex)
- bison (yacc)
- gawk (awk)
- make (gmake nos BSDs)
- Subversion (svn)
- jam (o que vem com o Toolchain)
no Ubuntu, Kubuntu, Debian e parentes, pode ser usado:
sudo apt-get install subversion autoconf automake texinfo flex bison gawk build-essential
Crie um diretório onde serão baixados os fontes em algum lugar
Obtendo e compilando o Toolchain (binutils + gcc)
editarsvn checkout svn://svn.berlios.de/haiku/buildtools/trunk buildtools
Vai demorar um pouco dependendo da sua conexão, esse comando vai criar uma pasta chamada buildtools e baixar os fontes para o toolchain do Haiku.
Depois compilamos a versão customizada do Jam (mesma função do make)
cd buildtools/jam make sudo ./jam0 install
agora temos o comando jam instalado em nosso sitema podemos ir em frente
o proximo passo e baixar os fontes do próprio Haiku
Obtendo e compilando o Haiku
editarsvn checkout svn://svn.berlios.de/svnroot/repos/haiku/haiku/trunk Haiku
do mesmo modo como antes, deve demorar um pouco
agora temos de decidir qual versão do GCC vamos usar. Isso vai determinar se o sistama compilado será compativel com o software ja existente para BeOS, no caso por agora, vamos usar o GCC2, a diferença é pequena no procedimento. entre na pasta Haiku criada pelo svn e digite:
./configure --build-cross-tools ../buildtools/
considerando que as pastas buildtools e Haiku estão em uma mesma pasta, deve compilar o toolchain. Se a sua distro Linux for x86_64 tente:
linux32 ./configure --build-cross-tools ../buildtools/ --use-32bit
se não der nenhum erro, seu toolchain deve estar pronto para ser usado e uma mensagem deve estar no final da listagem informando isso.
finalmente podemos chamar o jam para compilarmos o Haiku:
jam -q
É só isso mesmo! O flag -q indica ao jam para parar ao primeiro erro, o que é bem conveniente. Se a sua maquina for bem parruda e tiver bastante memória você pode usar --use-gcc-pipe como argumento para o ./configure, e -j2 ou -jx sendo x qualquer valor para o jam, mas va devagar, -j3 é o bastante para deixar uma máquina com dois processadores ou núcleos bem ocupada.
Se tudo correr bem deve haver um arquivo chamado haiku.image em Haiku/generated que é uma imagem crua (raw) de um HD, que pode ser passada ao qemu por exemplo:
qemu -m 128 -hda generated/haiku.image