Code source Linux/Unix

La compilation de Gwyddion sur les systèmes Unix est basée sur GNU autotools (autoconf, automake, libtool), comme pour la plupart des logiciels Unix libres. Si vous avez déjà compilé un logiciel à partir du code source, vous avez alors sûrement déjà eu affaire avec autotools et vous connaissez donc la manière de procéder. Cette section décrit toutefois la procédure de compilation en détail pour les non initiés. Le fichier INSTALL dans le répertoire racine de archives sources contient les instructions génériques d'installation pour autotools. Des informations spécifiques à Gwyddion sont disponibles dans le fichier INSTALL.gwyddion. Comme ce fichier est mis à jour avec la version de Gwyddion, il peut contenir des informations mises à jour, et vous devriez vous fier à celles-ci plutôt qu'à celles de ce guide, même si elles se contredisent.

Instructions Rapides

Si vous connaissez l'exercice :

tar -jxvf gwyddion-2.16.tar.bz2
cd gwyddion-2.16
./configure
make install

Dépaquetage des Sources

Dépaqueter les archives du code source avec

tar -jxvf gwyddion-2.16.tar.bz2

en remplaçant 2.16 par le numéro de version actuel. Cette commande créera le dossier gwyddion-2.16 (là encore avec le numéro de version actuel en lieu et place de 2.16), cd vers ce dossier. Toutes les autres étapes de la compilation se dérouleront à cet endroit.

Si votre système d'exploitation ne possède pas bzip2 vous pouvez télécharger gwyddion-2.16.tar.gz (compressé avec gzip) à la place et dépaqueter avec

tar -zxvf gwyddion-2.16.tar.gz

Cependant, les systèmes Unix ou basés sur Unix récents possèdent à la fois bzip2 et gzip, étant donnée sa taille plus petite, gwyddion-2.16.tar.bz2 devrait être logiquement préféré.

Configuration

Lancez

./configure

pour configurer Gwyddion.

Le script configure tente de déterminer les valeurs correctes de diverses variables du système utilisées lors de la compilation. Il utilise ces valeurs pour créer un Makefile dans chaque répertoire du paquet, quelques fichiers d'en-tête .h contenant des définition propres au système ainsi que quelques fichiers auxiliaires. Il crée finalement un script config.status que vous pourrez lancer pour recréer la configuration actuelle, et un fichier config.log. Ce fichier contient les détails du processus de détection, qu'il est utile d'include dans les rapports de bug liés à la compilation.

Si configure annonce que certains paquets nécessaires manquent, installez les et re-lancer le. Cela s'applique aussi dans le cas où configure termine correctement mais vous vous rendez compte qu'il manque un paquet optionnel avec lequel vous souhaitez compiler Gwyddion. Il est possible qu'un paquet ne soit mal ou pas détecté du tout bien que vous l'ayez installé, typiquement si celui est installé dans un répertoire non standard. Il est nécessaire dans ce cas de modifier certaines variables d'environnement afin que configure soit capable de trouver ces paquets :

PKG_CONFIG_PATH

La plupart des paquets sont fournis avec des fichiers pkg-config (.pc) qui décrivent la manière dont les programmes doivent se compiler et se lier entre eux. configure utilise les informations fournies dans ces fichiers, il faut donc que PKG_CONFIG_PATH soit ajusté de façon à ce qu'il liste tous les répertoires non standard contenant les fichiers pkg-config utiles. Ainsi pour installer Gtk+ dans /opt/gnome et FFTW3 dans $HOME/opt/fftw3 on pourra faire PKG_CONFIG_PATH=/opt/gnome/lib/pkgconfig:$HOME/opt/fftw3/lib/pkgconfig; export PKG_CONFIG_PATH

PATH, LD_LIBRARY_PATH

Il peut être nécessaire de modifier ces variables pour inclure des répertoires non standards contenant respectivement des exécutables et des librairies utiles.

CPPFLAGS, LDFLAGS

Il peut être nécessaire de modifier ces variables pour inclure des répertoires non standards contenant des fichiers d'en-tête et des librairies de paquets n'ayant pas de fichiers pkg-config, par exemple pour libTIFF dans /usr/local on pourra faire CPPFLAGS=-I/usr/local/include; export CPPFLAGS et LDFLAGS=-L/usr/local/lib; export LDFLAGS.

Le répertoire dans lequel Gwyddion sera installé ainsi que certaines fonctionnalités optionnelles peuvent être activées/désactivées à l'aide d'options de la commande configure. pour obtenir la liste complète de ces options, lancez

./configure --help

L'option --prefix règle le répertoire de base de l'installation. Les composants du logiciels seront installés dans les sous-répertoires bin, lib, share, etc. (ils seront créés s'ils n'existent pas). Un contrôle plus fin est possible en utilisant des options spécifiant des sous-répertoires particuliers tels que --bindir, --libdir. Le préfixe par défaut est /usr/local/bin, pour installer Gwyddion dans votre répertoire home vous pouvez par exemple utiliser

./configure --prefix=$HOME/opt/gwyddion

Configuration fine

Des fonctionnalités optionnelles peuvent être activées/désactivées avec des options telles que --with-fftw3/--without-fftw3 (pour FFTW3):

./configure --with-fftw3

Toutes les fonctionnalitées optionnelles sont activées par défaut si les pre-requis sont présents. Un résumé des fonctionnalités activées et désactivées sont affichées vers la fin de la sortie de configure.

Certaines actions auxiliaires de l'installation peuvent être désactivées dans configure : la mise à jour des fichiers Freedesktop peut être désactivée avec --disable-desktop-file-update. L'installation des schémas GConf2 peut être désactivée avec --disable-schemas-install. Cependant, la raison habituelle pour désactiver ces actions est l'installation de Gwyddion dans un répertoire temporaire au lieu du répertoire final (c'est souvent le cas lors de la compilation de paquets Linux). Dans ce cas ces actions auxiliaires sont automatiquement déastivées par un DESTDIR non vide (voir installation) et n'ont donc pas à être désactivées dans configure.

Compilation

Lancez

make

et attendez jusqu'à ce que Gwyddion soit compilé. Si configure s'est terminé sans erreur alors la compilation devrait se dérouler sans problème.

S'il vous faut faire des choses inhabituelles pour compiler le paquet, essayez de déterminer comment configure permettrait de régler le problème, et envoyer par e-mail des correctifs ou des instructions à l'adresse de rapport de bug, de manière à ce qu'ils soient pris en compte pour la version suivante.

Installation

Lancez

make install

pour installer Gwyddion dans le dossier ciblé. Si vous installez Gwyddion dans un dossier système, vous devez avoir les privilèges root pour lancer cette commande, en utilisant par exemple sudo :

sudo make install

Notez que Gwyddion doit être installé pour pouvoir être lancé, il est impossible de le faire tourner s'il n'est pas installé.

Pour installer Gwyddion dans un répertoire temporaire, pour créer un paquet par exemple, modifiez la variable make DESTDIR avec un préfixe qui sera utilisé pour tous les répertoires cibles :

make install DESTDIR=/var/tmp/gwyddion-buildroot

Ne modifiez pas les variables des dossiers individuels telles que bindir, libdir.

Si vous n'installez pas dans un dossier système, par exemple avec l'installation dans un sous-dossier ou votre dossier home, il vous faudra peut être ajuster les variables suivantes durant l'installation :

  • GCONF_SCHEMA_CONFIG_SOURCE – emplacement des schémas GConf2
  • KDE4_MODULE_DIR – emplacement des modules KDE4

Il se peut que la variable XDG_DATA_DIRS doive être modifiée après l'installation pour obtenir une intégration complète dans le bureau.

Désinstallation

Lancez

make uninstall

dans le dossier où Gwyddion a été compilé afin de le supprimer. Dans le cas où vous auriez perdu le répertoire original, vous pouvez essayer d'extraire les fichiers de compilation, configurer et compiler de la même manière que lors de l'installation puis lancer make uninstall, mais le succès de cette opération dépend de votre capacité à reproduire le processus de compilation.

Paquets RPM

Il est possible de compiler des paquets RPM sur les distributions GNU/Linux basées sur RPM directement à partir des archives du code source grâce à la commande

rpmbuild -tb gwyddion-2.16.tar.bz2

, où 2.16 doit être remplacé par le numéro de version actuel. Cette méthode a été testée sur Fedora, openSuSE et Mandriva, et le fichier de spécifications RPM contient certaines informations pour ces systèmes. Un support spécifique à d'autres systèmes basés sur RPM peut être ajouté sur demande.