m (→Módulos baseados en Git) |
|||
(5 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | + | ||
{{note|A versión 3 da colección de ''software'' de KDE pode compilarse empregando versións anteriores de kdesrc-build, pero este artigo non trata ese tema.}} | {{note|A versión 3 da colección de ''software'' de KDE pode compilarse empregando versións anteriores de kdesrc-build, pero este artigo non trata ese tema.}} | ||
Line 16: | Line 16: | ||
* Mantemento dun rexistro cos erros de compilación para podelos revisar máis comodamente e así solucionar con maior facilidade os posibles problemas. | * Mantemento dun rexistro cos erros de compilación para podelos revisar máis comodamente e así solucionar con maior facilidade os posibles problemas. | ||
− | Isto non acaba con todos os problemas de compilación da colección de ''software'' de KDE, aínda | + | Isto non acaba con todos os problemas de compilación da colección de ''software'' de KDE, aínda quedarán algúns por [[../Troubleshooting (gl)|resolver]]. Moitos dos erros que se dan ao empregar outros métodos danse tamén ao empregar esta ferramenta, así que vai ter que ler os ficheiros de rexistro de erros. |
===Vantaxes=== | ===Vantaxes=== | ||
Line 36: | Line 36: | ||
*Para buscar no ''repositorio'' Subversion de KDE, empregue [http://websvn.kde.org/trunk/KDE WebSVN]. | *Para buscar no ''repositorio'' Subversion de KDE, empregue [http://websvn.kde.org/trunk/KDE WebSVN]. | ||
− | *Para buscar nos repositorios dos proxectos de KDE que empreguen Git, pode ir | + | *Para buscar nos repositorios dos proxectos de KDE que empreguen Git, pode ir á [http://projects.kde.org páxina dos proxectos de KDE no Git] ou ao [http://gitweb.kde.org sitio ''web'' do Git de KDE].. |
*Pode navegar polas bibliotecas de Qt empregadas por KDE no [http://gitorious.org/+kde-developers/qt/kde-qt sitio ''web'' de kde-qt en Gitorious]. | *Pode navegar polas bibliotecas de Qt empregadas por KDE no [http://gitorious.org/+kde-developers/qt/kde-qt sitio ''web'' de kde-qt en Gitorious]. | ||
Line 43: | Line 43: | ||
kdesrc-build é bastante doado de instalar e configurar, pero deberá dispoñer do ''software'' axeitado para compilar a colección de ''software'' de KDE. A lista destes requisitos están dispoñible en: | kdesrc-build é bastante doado de instalar e configurar, pero deberá dispoñer do ''software'' axeitado para compilar a colección de ''software'' de KDE. A lista destes requisitos están dispoñible en: | ||
− | * [[Getting_Started/Build/ | + | * [[Getting_Started/Build/Requirements (gl)|Requisitos para a versión 4 da compilación de ''software'' de KDE]]. |
Para o propio kdesrc-build fai falla a versión 5.8 ou posterior de Perl. A meirande parte das distribucións de GNU/Linux contan con ela, instalada de maneira predeterminada. Pode comprobar a versión de Perl que ten instalada coa seguinte orde: | Para o propio kdesrc-build fai falla a versión 5.8 ou posterior de Perl. A meirande parte das distribucións de GNU/Linux contan con ela, instalada de maneira predeterminada. Pode comprobar a versión de Perl que ten instalada coa seguinte orde: | ||
− | < | + | <syntaxhighlight lang="text">perl -v</syntaxhighlight> |
Necesitará ademáis [https://github.com/gisle/libwww-perl#readme libwww], unha colección de módulos de Perl relacionados coa Internet. | Necesitará ademáis [https://github.com/gisle/libwww-perl#readme libwww], unha colección de módulos de Perl relacionados coa Internet. | ||
Line 55: | Line 55: | ||
Unha vez teña o sistema listo para compilar a colección de ''software'' de KDE, pode descargar kdesrc-build do seu [http://kdesrc-build.kde.org/ sitio ''web'' oficial]. O ficheiro conterá (polo menos) o guión kdesrc-build e un ficheiro de configuración de exemplo. A instalación é tan doada como gardar o ficheiro e darlle permisos de execución. Se quere pode poñelo nun directorio dos que conten a súa variable de ambiente PATH, pero para o exemplo seguinte porémolo no directorio «$HOME/kdesrc». | Unha vez teña o sistema listo para compilar a colección de ''software'' de KDE, pode descargar kdesrc-build do seu [http://kdesrc-build.kde.org/ sitio ''web'' oficial]. O ficheiro conterá (polo menos) o guión kdesrc-build e un ficheiro de configuración de exemplo. A instalación é tan doada como gardar o ficheiro e darlle permisos de execución. Se quere pode poñelo nun directorio dos que conten a súa variable de ambiente PATH, pero para o exemplo seguinte porémolo no directorio «$HOME/kdesrc». | ||
− | < | + | <syntaxhighlight lang="bash"> |
mkdir -p ~/kdesrc | mkdir -p ~/kdesrc | ||
cd ~/kdesrc | cd ~/kdesrc | ||
tar xjvf ~/path/to/kdesrc-build-1.12.tar.bz2 | tar xjvf ~/path/to/kdesrc-build-1.12.tar.bz2 | ||
cp kdesrc-build-1.12/kdesrc-build . | cp kdesrc-build-1.12/kdesrc-build . | ||
− | </ | + | </syntaxhighlight> |
Se o prefire, pode obter a última versión (e ficheiro de configuración) directamente do SVN: | Se o prefire, pode obter a última versión (e ficheiro de configuración) directamente do SVN: | ||
− | < | + | <syntaxhighlight lang="bash"> |
mkdir -p ~/kdesrc | mkdir -p ~/kdesrc | ||
cd ~/kdesrc | cd ~/kdesrc | ||
Line 70: | Line 70: | ||
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-buildrc-sample > ~/.kdesrc-buildrc | svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-buildrc-sample > ~/.kdesrc-buildrc | ||
chmod +x kdesrc-build | chmod +x kdesrc-build | ||
− | </ | + | </syntaxhighlight> |
====Configuración==== | ====Configuración==== | ||
Agora [[Getting Started/Build/kdesrc-buildrc_(gl)|configúreo]]. Os valores predeterminados do ficheiro de exemplo deberían valer na meirande parte dos casos. | Agora [[Getting Started/Build/kdesrc-buildrc_(gl)|configúreo]]. Os valores predeterminados do ficheiro de exemplo deberían valer na meirande parte dos casos. | ||
− | < | + | <syntaxhighlight lang="bash"> |
cp ~/kdesrc/kdesrc-build-1.12/kdesrc-buildrc-sample ~/.kdesrc-buildrc | cp ~/kdesrc/kdesrc-build-1.12/kdesrc-buildrc-sample ~/.kdesrc-buildrc | ||
# Now edit the ~/.kdesrc-buildrc | # Now edit the ~/.kdesrc-buildrc | ||
− | </ | + | </syntaxhighlight> |
{{tip|Teña en conta que o nome do ficheiro de configuración comeza cun punto, polo que será un ficheiro oculto. Pode que teña que configurar o xestor de ficheiros para amosar este tipo de ficheiros e así poder atopalo e editalo. Tamén pode editar o ficheiro antes de copialo a «$HOME/.kdesrc-buildrc».}} | {{tip|Teña en conta que o nome do ficheiro de configuración comeza cun punto, polo que será un ficheiro oculto. Pode que teña que configurar o xestor de ficheiros para amosar este tipo de ficheiros e así poder atopalo e editalo. Tamén pode editar o ficheiro antes de copialo a «$HOME/.kdesrc-buildrc».}} | ||
Line 147: | Line 147: | ||
We're almost there. If you're happy with your settings then it's time to test out kdesrc-build. In theory things are as simple as running kdesrc-build and then coming back later. ;) | We're almost there. If you're happy with your settings then it's time to test out kdesrc-build. In theory things are as simple as running kdesrc-build and then coming back later. ;) | ||
− | < | + | <syntaxhighlight lang="bash"> |
cd ~/kdesrc | cd ~/kdesrc | ||
./kdesrc-build | ./kdesrc-build | ||
− | </ | + | </syntaxhighlight> |
Pero pode que queira probalo antes compilando qt-copy. | Pero pode que queira probalo antes compilando qt-copy. | ||
− | < | + | <syntaxhighlight lang="bash"> |
cd ~/kdesrc | cd ~/kdesrc | ||
./kdesrc-build qt-copy | ./kdesrc-build qt-copy | ||
− | </ | + | </syntaxhighlight> |
{{tip|Se ten o ''aplicativo'' [http://www.gnu.org/software/screen/ GNU screen] emprégueo para executar kdesrc-build, pois así poderá telo executándose nunha sesión aparte e pechar a súa sen que o kdesrc-build deixe de traballar.}} | {{tip|Se ten o ''aplicativo'' [http://www.gnu.org/software/screen/ GNU screen] emprégueo para executar kdesrc-build, pois así poderá telo executándose nunha sesión aparte e pechar a súa sen que o kdesrc-build deixe de traballar.}} | ||
Line 175: | Line 175: | ||
Por exemplo, se qt-copy non deu compilado debería facer o seguinte para ler as mensaxes de saída: | Por exemplo, se qt-copy non deu compilado debería facer o seguinte para ler as mensaxes de saída: | ||
− | < | + | <syntaxhighlight lang="bash"> |
cd ~/kderc | cd ~/kderc | ||
kwrite log/latest/qt-copy/error.log | kwrite log/latest/qt-copy/error.log | ||
− | </ | + | </syntaxhighlight> |
Substitúa kwrite polo seu editor de texto preferido. Con sorte a saída serviralle de axuda para resolver o problema. Por exemplo, se o fallo consiste nunha saída de CMake que di algo de que falta unha biblioteca, instálea e vólvao intentar. Para os erros de ligazón pode probar a executar --refresh-build no módulo (ou as bibliotecas necesarias como qt-copy ou kdelibs se iso non funciona). | Substitúa kwrite polo seu editor de texto preferido. Con sorte a saída serviralle de axuda para resolver o problema. Por exemplo, se o fallo consiste nunha saída de CMake que di algo de que falta unha biblioteca, instálea e vólvao intentar. Para os erros de ligazón pode probar a executar --refresh-build no módulo (ou as bibliotecas necesarias como qt-copy ou kdelibs se iso non funciona). |
Note |
---|
A versión 3 da colección de software de KDE pode compilarse empregando versións anteriores de kdesrc-build, pero este artigo non trata ese tema. |
kdesrc-build (outrora chamado “kdesvn-build”) é unha ferramenta que lle permite aos usuarios e desenvolvedores descargar e compilar facilmente as últimas versións da colección de software de KDE, directamente descargada do repositorios do código fonte. Automatiza, entre outras, as seguintes tarefas:
Isto non acaba con todos os problemas de compilación da colección de software de KDE, aínda quedarán algúns por resolver. Moitos dos erros que se dan ao empregar outros métodos danse tamén ao empregar esta ferramenta, así que vai ter que ler os ficheiros de rexistro de erros.
Pregúntase cales son as vantaxes de empregar esta ferramenta? Pois velaquí van algunhas:
Se emprega kdesrc-build, pode que lle interese poder buscar nos repositorios do código fonte para saber que módulos buscar.
kdesrc-build é bastante doado de instalar e configurar, pero deberá dispoñer do software axeitado para compilar a colección de software de KDE. A lista destes requisitos están dispoñible en:
Para o propio kdesrc-build fai falla a versión 5.8 ou posterior de Perl. A meirande parte das distribucións de GNU/Linux contan con ela, instalada de maneira predeterminada. Pode comprobar a versión de Perl que ten instalada coa seguinte orde:
perl -v
Necesitará ademáis libwww, unha colección de módulos de Perl relacionados coa Internet.
Note |
---|
kdesrc-build desenvólvese en sistemas GNU/Linux, pero tamén debería funcionar nas distribucións de BSD, se ben poden resultar necearias algunhas das ferramentas de GNU. |
Unha vez teña o sistema listo para compilar a colección de software de KDE, pode descargar kdesrc-build do seu sitio web oficial. O ficheiro conterá (polo menos) o guión kdesrc-build e un ficheiro de configuración de exemplo. A instalación é tan doada como gardar o ficheiro e darlle permisos de execución. Se quere pode poñelo nun directorio dos que conten a súa variable de ambiente PATH, pero para o exemplo seguinte porémolo no directorio «$HOME/kdesrc».
mkdir -p ~/kdesrc
cd ~/kdesrc
tar xjvf ~/path/to/kdesrc-build-1.12.tar.bz2
cp kdesrc-build-1.12/kdesrc-build .
Se o prefire, pode obter a última versión (e ficheiro de configuración) directamente do SVN:
mkdir -p ~/kdesrc
cd ~/kdesrc
export SVN_ROOT=svn://anonsvn.kde.org/home/kde
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-build > kdesrc-build
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-buildrc-sample > ~/.kdesrc-buildrc
chmod +x kdesrc-build
Agora configúreo. Os valores predeterminados do ficheiro de exemplo deberían valer na meirande parte dos casos.
cp ~/kdesrc/kdesrc-build-1.12/kdesrc-buildrc-sample ~/.kdesrc-buildrc
# Now edit the ~/.kdesrc-buildrc
Tip |
---|
Teña en conta que o nome do ficheiro de configuración comeza cun punto, polo que será un ficheiro oculto. Pode que teña que configurar o xestor de ficheiros para amosar este tipo de ficheiros e así poder atopalo e editalo. Tamén pode editar o ficheiro antes de copialo a «$HOME/.kdesrc-buildrc». |
Asegúrese de que os módulos que quere compilar van incluídos. Probablemente lle interese ter como mínimo os seguintes:
Os módulos compílanse na orde en que aparecen no ficheiro de configuración, así que o primeiro debería ser qt-copy, logo kdelibs, e logo os demais.
Note |
---|
O ficheiro de configuración de exemplo xa ten estes módulos de maneira predeterminada, non terá que cambiar nada a non ser que queira engadir máis módulos ─quitándolles o «#» de diante─. |
Pode que queira activar a opción make-install-prefix se vai instalar KDE ou Qt nun directorio alleo ao seu directorio persoal. Esta opción permítelle empregar su ou sudo durante o proceso make install para que poida instalar ficheiros como administrador (root), ou permitir que certos programas se executen con máis permisos (necesario para que algúns programas funcionen correctamente).
module kdelibs make-install-prefix sudo -S # sudo sen stdin end module module kdebase make-install-prefix sudo -S end module
Se quere compilar un módulo que non está presente, engada o seguinte:
module <nome-do-módulo> end module
ao final do ficheiro de configuración. <nome-do-módulo> será o nome do módulo tal e como aparece no repositorio de software (por exemplo, kdemultimedia).
Algúns proxectos de KDE empregan o sistema de control de versións Git en vez de Subversion (estase realizando unha migración a gran escala). Amarok e Konversation xa realizaron o cambio.
Para compilar estes módulos con kdesrc-build só ten que engadir un par de liñas á configuración do módulo. Por exemplo, Konversation desenvólvese nun repositorio Git en [1]. Para engadilo como módulo empregaríase algo como o seguinte (podendo o nome ser calquera, sempre que non se empregase previamente):
module konversation repository git://anongit.kde.org/konversation branch master end module
Neste caso escolleuse a póla «master» dado que é a póla predeterminada de Git.
Agora, cada vez que compile Konversation, kdesrc-build empregará Git en vez de Subversion.
kdesrc-build emprégase dende a liña de ordes. A continuación lístanse algunhas das súas opcións máis útiles:
Opción | Efecto |
---|---|
--pretend (Forma acurtada: -p) | kdesrc-build procesará as opcións e a súa configuración con normalidade, e realizará a compilación do mesmo xeito, pero en vez de descargar e compilar xerará a saída que xeraría en caso de facelo. Debería executar kdesrc-build sempre con esta opción antes de empregalo sen ela para asegurarse de que está a facer o que vostede quere que faga. |
--no-svn (Forma alternativa: --no-src) | Esta opción sáltase o paso de actualización do código fonte, útil para cando estea a executar o guión pouco despois da última actualización e non quere descubrir que non houbo cambios. |
--refresh-build | Esta opción fai que o kdesrc-build borre a información sobre a compilación actual dos módulos indicados e os compile de novo dende cero. A opción tarda moito pero asegúrase de que todo vaia como debe ser. |
Calquera cousa que se indique na liña de ordes que non sexa unha opción interpretarase coma un nome de módulo a compilar, e compilaranse na orde indicada. Se non se indica módulo ningún, compilaranse todos os módulos do ficheiro de configuración na orde na que aparecen no mesmo.
Xa case acabamos. Se rematou de personalizar o ficheiro de configuración, vai sendo hora de probar a ferramenta. En teoría é tan doado como executar kdesrc-build e volver máis tarde ;) We're almost there. If you're happy with your settings then it's time to test out kdesrc-build. In theory things are as simple as running kdesrc-build and then coming back later. ;)
cd ~/kdesrc
./kdesrc-build
Pero pode que queira probalo antes compilando qt-copy.
cd ~/kdesrc
./kdesrc-build qt-copy
Tip |
---|
Se ten o aplicativo GNU screen emprégueo para executar kdesrc-build, pois así poderá telo executándose nunha sesión aparte e pechar a súa sen que o kdesrc-build deixe de traballar. |
Se a compilación falla (kdesrc-build amosará unha mensaxe de erro de cor vermella) son varias as posibilidades:
Como descubrir cal dos casos foi? A saída da orde que fallou quedará almacenada no directorio de rexistro. O directorio de rexistro predeterminado é o directorio log dentro do directorio do código fonte. O directorio estrutúrase así: log/data-de-execución/módulo/output-file.log. Para atopar o ficheiro axeitado con maior facilidade, existen unha serie de ligazóns simbólicas:
log/latest ten as saídas da última vez que se executou kdesrc-build sen a opción --pretend. log/latest/<módulo>/error.log ten a saída da orde que provocou que fallase o módulo.
Por exemplo, se qt-copy non deu compilado debería facer o seguinte para ler as mensaxes de saída:
cd ~/kderc
kwrite log/latest/qt-copy/error.log
Substitúa kwrite polo seu editor de texto preferido. Con sorte a saída serviralle de axuda para resolver o problema. Por exemplo, se o fallo consiste nunha saída de CMake que di algo de que falta unha biblioteca, instálea e vólvao intentar. Para os erros de ligazón pode probar a executar --refresh-build no módulo (ou as bibliotecas necesarias como qt-copy ou kdelibs se iso non funciona).
Se non dá coa solución, pode que queira agardar un día e probar a volver actualizalo, coa esperanza de que o erro se solucionase. Pode probar tamén a enviar un correo á rolda de correo kde-devel a ver se hai alguén que saiba a solución ou se hai outros co mesmo problema.
Asumindo que instalou e compilou módulos abondo para unha instalación funcional da colección de software de KDE, aínda terá que preparar o seu ambiente correctamente para executala. kdesrc-build (aínda) non pode axudarlle aquí, polo que deberá seguir as instrucións fornecidas no artigo sobre como preparar a versión 4 da colección de software de KDE para o desenvolvemento.
Asegúrese de empregar as mesmas rutas que as que definiu no ficheiro de configuración: para as variables KDEDIRS e KDEDIR empregue a configuración da opción "prefix" (na sección global). Para a variable QTDIR empregue a configuración da opción "qtdir".
Manter a instalación de KDE ao día é tan doado como volver executar kdesrc-build. Todo kdesrc-build pasa polas seguintes fases:
En principio non se borran os directorios de compilación antigos, así que a compilación que se faga tras unha pequena actualización levará xeralmente menos tempo que a compilación inicial do módulo. Isto é o que se denomina "make incremental". Porén pode que ás veces sexa necesario realizar unha compilación completamente de cero por mor de inconsistencias entre a configuración do directorio de compilación e os cambios no directorio do código fonte. Pode empregar a opción --refresh-build para forzar unha compilación dende cero.
Para máis información sobre como sacarlle o mellor partido a kdesrc-build, bótelle unha ollada á documentación oficial, na que se describen as opcións de todos os módulos e as opcións da liña de ordes dispoñibles, así como trucos para realizar útiles varias tarefas.
Pode engadir as súas dúbidas á páxina de conversa deste artigo, preferiblemente na súa versión en inglés, e con sorte aparecerá alguén coa resposta que busca.