Compilation sous Linux

From Stellarium Wiki
Revision as of 19:08, 18 August 2009 by Jp perroud (Talk | contribs)
Jump to: navigation, search

Chaque fois que Stellarium est libéré, le code source est disponible dans le système d'emballage Sourceforge. Building code source et qui sont rejetées de cette façon devrait vous donner une copie de travail de Stellarium, qui est fonctionnellement identique à la binaires pour cette libération.

Il est également possible d'obtenir un code source en développement en utilisant une Subversion. Celui-ci peut contenir de nouvelles fonctionnalités qui ont été mises en oeuvre depuis la dernière publication de Stellarium, de sorte que c'est souvent plus agréable. ATTENTION: les Subversion du code source Stellarium sont souvent des travaux en cours, et en tant que telle peuvent produire un programme instable, mai aussi qui ne fonctionne pas bien du tout, ou même ne peux pas se compiler correctement. Si vous êtes nouveau avec "la ligne de commande", vous pouvez également trouver dans cette page une aide précieuse.

Contents

Préparation

Tout d'abord assurez-vous que tous les outils sont installés sur votre système.

Nous allons maintenant utiliser au lieu de CMake automake/autoconf. C'est problème si vous n'avez pas une version assez récente de CMake. Assurez-vous que la version spécifiée dans le build dependencies page (l'erreur est considérée si vous avez une ancienne version de CMake est quelque chose à voir avec curl).

Si vous avez les outils de développement et QT version 3 et 4 installés sur votre système, assurez-vous que les commandes pour moc, uic et donc pointent sur la version QT4. Les utilisateurs Ubuntu/Debian peuvent utiliser ce script pour permuter entre eux.

Extraire l'archive contenant le code source. Ouvrez un terminal et allez dans le répertoire où vous voulez construire Stellarium. Enregistrez le fichier archivé dans ce répertoire et lancez la commande dans le terminal (si vous préférez, vous pouvez utiliser un autre outil de type graphique pour cette opération):

 $ tar zxf stellarium-0.10.2.tar.gz

Vous devriez maintenant avoir un répertoire Stellarium-0.10.2 avec le code source en elle.

Construction

  • Dans un terminal et dans le répertoire des sources:
cd stellarium-0.10.2
  • Créer le répertoire et le changement :
mkdir -p builds/unix
cd builds/unix
  • Configurer la construction en utilisant CMake:
cmake ../..

Par défaut, ce qui va configurer Stellarium pour être installé dans le répertoire / usr / local. Si vous voulez un autre emplacement, utilisez cette option pour CMake, e.g.:

cmake -DCMAKE_INSTALL_PREFIX=/opt/stellarium ../..
  • Lancez la construction
make
  • nstaller le programme (en tant que root si nécessaire)
make install

C'est fait. Vous devriez avoir maintenant un Stellarium construit et installé. Construction sur une durée d'environ cinq minutes sur un P4 1.7Ghz/512 Mb.

Version intermédiaire (dévelopement)

Tout d'abord, assurez-vous d'avoir tous les outils installés.

Obtenir le code source

Exécutez cette commande:

svn co https://stellarium.svn.sourceforge.net/svnroot/stellarium/trunk/stellarium stellarium

Cela va créer le répertoire Stellarium qui contiendra le code source.

Construction de la source

  • Allez dans le répertoire qui a été créé par la commande svn ci-dessus
cd Stellarium 
  • Créez le répertoire builds/unix et :
mkdir -p builds/unix
cd builds/unix

Par défaut, ce qui va configurer Stellarium pour être installés dans la zone /usr/local/ . Si c'est OK, lancez CMake comme ça:

cmake ../..

ou, si vous préférez vous indiquer un autre préfixe d'installation, sélectionnez-le comme ça

cmake -DCMAKE_INSTALL_PREFIX=/opt/mylocation/ ../..
  • Maintenant, construire en utilisant make:
make
  • Pour lancer Stellarium de l'arbre source, revenir à la racine de l'arbre source, et d'appeler le binaire comme ceci:
cd ../..
builds/unix/src/stellarium
  • Si vous voulez installer le programme, de la construction des maisons / unix répertoire de taper cette commande (en tant que root si nécessaire):
make install

Updating SVN

If you have previously build the SVN code, but want to see what changes have been made since you did that, just cd into the stellarium directory and use the command:

svn up

This will download just the changes which were made since you last retrieved files from the repository. Often, all that will be required is to build from the make stage, but if there are new files you will need to build from the CMake stage.

If you modify any files, subversion will attempt to merge new updates with your changed files. This can lead to build problems, and you may want to revert your changes before updating. To revert such local edits, from the stellarium directory, do this before the update:

svn status

And for all files which are listed with an M next to them, do

svn revert filename filesname2 ...

Or you can just revert all changes recursively:

svn revert -R ./

Enabling Sound Support

Audio support for the new scripting engine is available after r3998 of the SVN code. Stellarium's sound support is a compile time option. To use sound in Stellarium you need to have a version of QT which supports the Phonon audio system. You also need a recent version of CMake.

Sound support is controlled by the CMake option ENABLE_SOUND. You can change this setting using ccmake, by editing the CMakeCache.txt file, or by supplying the -DENABLE_SOUND=1 option when you first run CMake.

Current Build Issues

Note that the development code is a work in progress, and as such, please don't expect it to build straight off the bat. Often it will be fine, but sometimes the build will be broken.

If the build seems to be broken for extended periods, try a thorough clean of the build directory (i.e. remove builds/unix), and start from the beginning. Check there are no new dependencies which you are missing. If you still have trouble, post to the forums or stellarium-pubdevel mailing list.

2009-03-10: CMake's detection of Phonon for audio support is not working properly right now. It is necessary to hack up the CMakeLists.txt file to gt it working. I'm working on it. -Matthew


Personal tools
Namespaces
Variants
Actions
in this wiki
other languages
Toolbox