Compilando o Scribus usando o CMake
Voltar para a página principal
Versão em inglês.
CMake no Scribus 1.3.X (também no 1.3.3.X)
Depois de muitos anos usando o Autotools como sistema de construção (build sytem), os desenvolvedores escolheram o CMake como substituto ao Autotools. Ele oferece uma configuração/instalação muito mais flexível e de pouca complexidade, compatível com sistemas de construção (build) no Linux e variantes de Unix, Windows e Mac OSX.
Você precisará do CMake 2.4.3 para melhores resultados. Versões antigas falharão.
Sumário de como instalar
Faça o download do SVN como dito no Obtendo o Scribus a partir do SVN e siga os passos abaixo.
A partir do diretório do Scribus:
/caminho/parao/cmake . -DCMAKE_INSTALL_PREFIX:PATH=/caminho/para/instalar/o/scribuscmake/
ex. /usr/local/bin/cmake . -DCMAKE_INSTALL_PREFIX:PATH=/opt/scribus134cvs
Algumas opções que o arquivo CMake do Scribus compreende (mais por vir!):
- WANT_VERSIONING=1: Faz com que a construção utilize a configuração de VERSÃO como sufixo para os diretórios e binários. Exemplo: O binário poderia ser o
scribus-1.3.4cvs
. Isto deve significar que você pode instalar múltiplas versões com o mesmo prefixo sem que conflitos ocorram. - WANT_DEBUG=1: Marca a construção com a opção debug e usa -O0 -g3, em vez de -O2*
- WANT_CAIRO=1: Faz como que o CMake procure pelo Cairo e construa uma versão com o Cairo, em vez do LibArt_LGPL. Por favor, note que nós ainda consideramos a versão cairo como Beta.
- WANT_LIBART=1 (padrão): O mesmo que acima, porém utiliza o Libart no lugar do Cairo.
Exemplo: para construir uma versão com o Debug habilitado e usando o Cairo:
/usr/local/bin/cmake . -DCMAKE_INSTALL_PREFIX:PATH=/opt/scribus134cvs -DWANT_CAIRO=1 -DWANT_DEBUG=1 -DWANT_VERSIONING=1
* Esta opção é padrão e não pode ser desabilitada ao menos que você edite o arquivo CMakeFiles.txt
Construindo fora do diretório fonte*
Uma das vantagens do CMake é que você pode compilar o código fonte fora do seu próprio diretório. Como assim? Isso faz com que você construa a aplicação sem escrever nada no diretório do código fonte. Isto significa que seu diretório raiz sempre estará limpo. É mais fácil e rápido de ser atualizado e você pode gerar construções de múltiplos alvos fora do diretório fonte a partir do mesmo diretório.
Para o fazer, você precisará de um novo diretório para construir o código.
Digamos que seu código fonte está em:
/home/nome_de_usuário/scribuscmake/Scribus
Crie o seguinte diretório:
/home/nome_de_usuário/scribuscmake/builddir
E então, em vez de fazer...
ex. /usr/local/bin/cmake . -DCMAKE_INSTALL_PREFIX:PATH=/opt/scribus134cvs
Mude para o diretório de contrução e então execute:
ex. /usr/local/bin/cmake ../Scribus -DCMAKE_INSTALL_PREFIX:PATH=/opt/scribus134cvs
* Opcional
Continuando a construção
Uma vez que isto esteja finalizado com sucesso, simplesmente execute:
make && make install.
O sistema de construção CMake é muito novo no Scribus, então alterações e melhorias serão feitas. Por favor, informe-nos sobre problemas no sistema através de nossa lista de correio eletrônico ou pelo nosso bugtracker.
Há uma extensa lista de afazeres para esse sistema, incluindo --mas não limitado à:
- Checar sua funcionalidade em diferentes distribuições
- Checar sua funcionalidade em vários "sabores" de UNIXs
- Checar sua funcionalidade em distribuições de 64 bits
- Adicionar suporte para Win32 e Mac OS X
Falha de compilação com o QT4
Nos sistemas que possuem ambos QT3 e QT4 instalados, o código fonte pode não compilar devido ao uso do uic e do moc do QT4 em vez do QT3. Ainda sim, isso não deverá acontecer quando o CMake 2.4.2 for lançado ou se você estiver usando a versão CVS atual do Scribus.
Veja como solucionar:
1.Remova o cache de instalações anteriores do CMake. Execute:
rm CMakeCacher.txt
2.Então, altere a variável PATH (caminho) para o seu QT3:
Gentoo: export PATH=/usr/qt/3/bin/:$PATH
SuSE: export PATH=/usr/lib/qt3/bin:$PATH
3.Execute novamente o comando de configuração:
Gentoo: ~/devel/CMAKE/bin/cmake . -DCMAKE_INSTALL_PREFIX:PATH=/caminho/para/a/instalação/
SuSE: /usr/local/bin/cmake . -DCMAKE_INSTALL_PREFIX:PATH=/caminho/para/a/instalação/