Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| gdl [Le 04/09/2008, 07:21] – accents 118.104.232.125, 127.0.0.1 | gdl [Le 11/09/2022, 12:13] (Version actuelle) – Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) moths-art | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| + | {{tag> | ||
| + | ---- | ||
| ====== GDL : GNU Data Language ====== | ====== GDL : GNU Data Language ====== | ||
| - | > | + | <note> |
| - | {{tag> | + | La version actuelle stable est la *0.9.5* (au 15 Mai 2015). |
| + | Il y deux façons d' | ||
| + | **[[apt:// | ||
| + | du développement du logiciel : nouvelles fonctionnalités et corrections de bugs ... Comme de gros efforts ont été fait pour faciliter la compilation depuis le source | ||
| + | quelque soit la version d' | ||
| + | </ | ||
| - | ===== Installation ===== | + | ===== Installation |
| - | Pour installer **GDL** depuis un paquet pré-compilé, | + | Pour installer **GDL** depuis un // |
| - | À la deuxième fois que j'ai installé **GDL** sous **Ubuntu**, j'ai dû installer un deuxième | + | Un paquet |
| - | [[apt://gnudatalanguage, | + | Vous pouvez aussi voir ici: |
| + | [[https://packages.ubuntu.com/ | ||
| - | Vous pouvez aussi voir ici: | + | ===== Compilation de la version 0.9.5 ===== |
| - | [[http:// | + | |
| - | ===== Compilation ===== | + | Tout se passe sans être root, et le //make install// est superflu. Il faut juste pouvoir installer des paquets " |
| + | Bien évidemment, | ||
| + | Sur une machine récente avec 2 ou 4 et un SSD, compter moins de 5 minutes de compilation. | ||
| + | (cette approche doit être transposable sans soucis à une machine sous Debian) | ||
| - | La version APT est basée sur la version 0.9pre6 de GDL. Depuis, une 0.9rc1 est sortie, et le CVS est toujours actif ... Très franchement, à partir du moment ou | + | < |
| + | $ sudo apt-get install g++ | ||
| + | $ sudo apt-get install cmake libncurses-dev libreadline-gplv2-dev \ | ||
| + | zlib1g-dev libpng-dev libgsl0-dev libwxbase2.8-dev \ | ||
| + | libplplot-dev libplplot-driver-xwin libmagick++-dev \ | ||
| + | libfftw3-dev libeigen3-dev pslib-dev | ||
| + | $ wget https:// | ||
| + | $ tar -zxf gdl-0.9.5.tgz | ||
| + | $ cd gdl-0.9.5 | ||
| + | $ mkdir build | ||
| + | $ cd build | ||
| + | $ cmake .. -DNETCDF=off -DHDF=off -DHDF5=off -DPYTHON=off | ||
| + | $ cpus=`getconf _NPROCESSORS_ONLN` | ||
| + | $ make -j $cpus | ||
| + | $ make check | ||
| + | $ cd .. | ||
| + | $ sh ./ | ||
| + | </ | ||
| + | |||
| + | ===== Compilation de la version 0.9.5 CVS ===== | ||
| + | |||
| + | Une fois la version vanilla | ||
| + | |||
| + | ===== Script de Compilation a minima ===== | ||
| + | |||
| + | Un petit script automatisé permet de compiler a minima GDL, ce qui permet de tester | ||
| + | |||
| + | Il n'y a eu à ce jour aucun retour négatif sous Ubuntu (à partir de 10.04 inclus) et Debian (sauf ajout de quelques paquets -dev-, cf tuto) | ||
| + | |||
| + | ===== Autre exemple de compilation (obsolète) ===== | ||
| + | |||
| + | Toute version antérieure à 0.9.5 est considérée comme obsolète. De plus, la voie //configure & make// a été retirée depuis 0.9.5, remplacée par la voie //cmake & make//. (On ne garde ces explications juste au cas - ou (il y a parfois des ruses par rapport à certains cas pointus ... GDL est utilisé sur certains vieux OS | ||
| + | pour faire tourner des pipelines extensivement testés et on peut vouloir rejouer cela ...)) | ||
| + | |||
| + | Compilation en utilisant la version GDL : gdl-0.9.3 et plplot 5.9.5 (préalablement déjà compiler et installer.) | ||
| - | La seule vraie //ruse// concerne plplot, car Debian n'a pas encore la 5.9.0 ou une fonction a change ... | ||
| < | < | ||
| - | tar -zxf gdl-0.9rc1.tar.gz | + | $ tar -zxf gdl-0.9.3.tar.gz |
| - | cd gdl-0.9rc1 | + | $ cd gdl-0.9.3 |
| - | aclocal | + | $ ./configure --with-Magick=no --with-netcdf=no --with-hdf=no \ |
| - | autoconf | + | --with-hdf5=no --with-python=no \ |
| - | automake | + | --with-plplot=/ |
| - | ./configure --enable-oldplplot | + | $ make |
| - | make | + | $ ./ |
| </ | </ | ||
| - | Je considère que //make install// est facultatif: il est tout a fait possible de compiler le projet puis de vivre en local. | + | Ceci est évidemment transposable aux autres versions de GDL |
| + | |||
| + | Je considère que //make install// est facultatif: il est tout a fait possible de compiler le projet puis de vivre en local. | ||
| + | packagee pour Ubuntu et sa version compilee soi-meme. Il suffit de faire: | ||
| + | < | ||
| + | ./configure [...] --prefix=/ | ||
| + | make | ||
| + | make install | ||
| + | </ | ||
| - | Supposons que vous ayez la version 5.9.0 de plplot, compilée à la main, dans une arborescence locale, ainsi qu'une version ad-hoc de la GSL, il suffira de faire: | + | Supposons que vous ayez la version 5.9.5 de plplot, compilée à la main, dans une arborescence locale, ainsi qu'une version ad-hoc de la GSL, il suffira de faire: |
| < | < | ||
| - | tar -zxf gdl-0.9rc1.tar.gz | + | tar -zxf gdl-0.9.3.tar.gz |
| - | cd gdl-0.9rc1 | + | cd gdl-0.9.3 |
| aclocal | aclocal | ||
| autoconf | autoconf | ||
| automake | automake | ||
| ./configure --without-hdf5 --with-Magick=no --without-netcdf --without-hdf \ | ./configure --without-hdf5 --with-Magick=no --without-netcdf --without-hdf \ | ||
| - | --with-plplot=/ | + | --with-plplot=/ |
| --with-gsl=/ | --with-gsl=/ | ||
| </ | </ | ||
| - | J'en ai profite pour montrer comment désactiver certaines options: ceci fait gagner un temps notable à la compilation, | ||
| - | Si, par hasard la partie graphique ne démarrait pas convenablement, | + | J'en ai profité pour montrer comment désactiver certaines options: ceci fait gagner un temps notable à la compilation, |
| + | |||
| + | Si, par hasard la partie graphique ne démarrait pas convenablement, | ||
| < | < | ||
| - | export LD_LIBRARY_PATH=/ | + | export LD_LIBRARY_PATH=/ |
| </ | </ | ||
| (si qlq1 pouvait expliquer, et me dire comment corriger cela dans le code, j'en serais ravi !) | (si qlq1 pouvait expliquer, et me dire comment corriger cela dans le code, j'en serais ravi !) | ||
| + | Attention, il ne faut pas confondre ce problème-ci avec le manque du package | ||
| + | décrit dans la partie // | ||
| + | |||
| + | |||
| + | ===== Compilation de gdl-0.9rc4 sous Ubuntu 10.04 LTS ===== | ||
| + | |||
| + | Il ne faut pas oublier que la compilation de GDL nécessite les paquets suivants: //readline, gsl, plplot// en version //dev//. Le paquet facultatif //fftw// est recommandé pour avoir une version efficace des FFT, meilleure que le code dans la GSL. Le paquet ImageMagick est facultatif mais il est vivement recommandé. Pour de simples tests, HDF et NetCDF ne sont pas vraiment indispensables ! (Si vous ne connaissez pas, passez ! En prime, ca gagnera du temps à la compilation ;-) | ||
| + | |||
| + | Assurez vous bien d' | ||
| + | |||
| + | A noter que les étapes //autoconf, ...// ne sont plus (ne devraient plus être) nécessaires en 0.9rc4 et CVS. | ||
| + | |||
| + | ==== Compilation de la version release. ==== | ||
| + | |||
| + | Récupérez l' | ||
| + | |||
| + | Une fois l' | ||
| + | Puis on passe à la préparation de la compilation avec // | ||
| + | |||
| + | < | ||
| + | $ tar -zxf gdl-0.9rc4.tar.gz | ||
| + | $ cd gdl-0.9rc4 | ||
| + | $ ./configure --with-Magick=no --with-python=no --with-netcdf=no --with-hdf=no --with-hdf5=no | ||
| + | </ | ||
| + | |||
| + | Le résultat obtenu est le suivant et permet de savoir quelles options ont été activées ou non. | ||
| + | |||
| + | < | ||
| + | |||
| + | GDL - GNU Data Language | ||
| + | ----- compilation options: --------------------------- | ||
| + | System: | ||
| + | Installation prefix: /usr/local | ||
| + | C++ compiler: | ||
| + | OpenMP support: | ||
| + | ----- optional libraries (consult README/ | ||
| + | wxWidgets: | ||
| + | Magick: | ||
| + | NetCDF: | ||
| + | HDF4: no | ||
| + | HDF5: no | ||
| + | FFTW: no (GSL version used by default) | ||
| + | libproject: | ||
| + | MPICH: | ||
| + | Python: | ||
| + | UDUNITS-2: | ||
| + | GRIB: no (needs explicit enabling) | ||
| + | ----- notes on auxiliary files: ---------------------- | ||
| + | - consult MAP_INSTALL for details concerning auxiliary | ||
| + | files needed for mapping support | ||
| + | - SAVE and RESTORE procedures require *.pro files from | ||
| + | the CMSVLIB package (see README for details) | ||
| + | ------------------------------------------------------ | ||
| + | use ' | ||
| + | |||
| + | </ | ||
| + | |||
| + | |||
| + | Selon la version de votre compilateur ou de plplot, vous pouvez avoir des messages d' | ||
| + | Pour pouvoir compiler, il faudra ajouter des options au lancement de // | ||
| + | |||
| + | |||
| + | Si votre compilateur ne supporte pas openmp. Vous pouvez ajouter l' | ||
| + | < | ||
| + | --with-openmp=no | ||
| + | </ | ||
| + | |||
| + | Je compile avec une version 4.4.3 de gcc et openMp est supporté. | ||
| + | |||
| + | Pour vérification de votre version de gcc : | ||
| + | < | ||
| + | gcc (Ubuntu 4.4.3-4ubuntu5) 4.4.3 | ||
| + | </ | ||
| + | |||
| + | Si vous avez une ancienne version de plplot ( antérieure à 5.9.0 ) , il vous faudra ajouter cette option. | ||
| + | |||
| + | < | ||
| + | |||
| + | Et enfin | ||
| + | < | ||
| + | $ make | ||
| + | $ make check | ||
| + | </ | ||
| + | |||
| + | Il est //normal// d' | ||
| + | on va mettre à jour avec la version CVS, plus avancée. | ||
| + | |||
| + | Une fois que ces étapes ont été réalisées (avec succès) vous pouvez lancer gdl, un exécutable se trouve dans le répertoire src (sh ./qui). | ||
| + | < | ||
| + | $ pwd | ||
| + | / | ||
| + | $ sh ./ | ||
| + | [: 14: !=: unexpected operator | ||
| + | Running current GDL with ./src/pro and ./testsuite in GDL_PATH | ||
| + | +/ | ||
| + | |||
| + | GDL - GNU Data Language, Version 0.9rc4 | ||
| + | |||
| + | - For basic information type HELP,/INFO | ||
| + | - No startup file read (GDL_STARTUP/ | ||
| + | - Please report bugs, feature or help requests and patches at: | ||
| + | https:// | ||
| + | |||
| + | GDL> | ||
| + | </ | ||
| + | |||
| + | ==== Compilation de la version CVS. ==== | ||
| + | |||
| + | Pour la version CVS, la démarche est similaire. La seule différence est la récupération du code source. | ||
| + | |||
| + | Si vous voulez récupérer les sources pour la première fois ( ou dans un tout nouveau répertoire ) , | ||
| + | saisissez la commande suivante, elle va créer un répertoire gdl ou se trouvera les sources. | ||
| + | < | ||
| + | $ cvs -z3 -d: | ||
| + | </ | ||
| + | |||
| + | Ou encore pour mettre à jour votre version CVS, vous vous placez dans le répertoire gdl puis la commande suivante | ||
| + | |||
| + | < | ||
| + | $ cvs -z3 -d: | ||
| + | $ mv gdl gdl-0.9.3cvs120301conf | ||
| + | </ | ||
| + | |||
| + | Les étapes suivantes sont à peu près les mêmes que pour la version release, à savoir : | ||
| + | * mkdir | ||
| + | * autoreconf | ||
| + | * configure | ||
| + | * make | ||
| + | * make check | ||
| + | |||
| + | < | ||
| + | $ cd gdl-0.9.3cvs120301conf | ||
| + | $ mkdir m4 | ||
| + | $ autoreconf -vfi | ||
| + | $ ./configure --with-Magick=no --with-python=no --with-netcdf=no --with-hdf=no --with-hdf5=no | ||
| + | |||
| + | GDL - GNU Data Language | ||
| + | ----- compilation options: --------------------------- | ||
| + | System: | ||
| + | Installation prefix: /usr/local | ||
| + | C++ compiler: | ||
| + | OpenMP support: | ||
| + | Build type: standalone (other: Python module) | ||
| + | ----- optional libraries (consult README/ | ||
| + | wxWidgets: | ||
| + | Magick: | ||
| + | NetCDF: | ||
| + | HDF4: no | ||
| + | HDF5: no | ||
| + | FFTW: yes | ||
| + | libproject: | ||
| + | MPICH: | ||
| + | Python: | ||
| + | UDUNITS-2: | ||
| + | GRIB: no (needs explicit enabling) | ||
| + | ----- notes on auxiliary files: ---------------------- | ||
| + | - consult MAP_INSTALL for details concerning auxiliary | ||
| + | files needed for mapping support | ||
| + | - SAVE and RESTORE procedures require *.pro files from | ||
| + | the CMSVLIB package (see README for details) | ||
| + | ------------------------------------------------------ | ||
| + | ----- note on OpenMP support ------------------------- | ||
| + | | ||
| + | | ||
| + | ------------------------------------------------------ | ||
| + | use ' | ||
| + | (optional 'make check' tests the build - experimental) | ||
| + | |||
| + | $ make | ||
| + | $ make check | ||
| + | |||
| + | </ | ||
| + | |||
| + | Au jour d' | ||
| + | une erreur d' | ||
| + | plus subtil, étant lié à la représentation des ULONG64 sur des machines 32 et 64 bits. Ne pas s'en soucier. | ||
| + | |||
| + | <note important> | ||
| + | Pour les problèmes dus aux anciennes versions de gcc et de plplot ne pas oublier les options | ||
| + | à passer à configure. ( [[gdl# | ||
| + | |||
| + | </ | ||
| + | |||
| + | |||
| + | |||
| + | ===== Compilation de gdl-0.9rc3 sous 9.04 ===== | ||
| + | |||
| + | Faisons l' | ||
| + | |||
| + | On récupère le TGZ de la 0.9rc3 sur Sourceforge ... | ||
| + | |||
| + | En general, la ligne directe doit suffire ... | ||
| + | < | ||
| + | tar -zxf gdl-0.9rc3.tar.gz | ||
| + | cd gdl-0.9rc3 | ||
| + | ./configure | ||
| + | make | ||
| + | </ | ||
| + | Cependant, il semble (du moins sur mon U 9.04 a moi) que le configure de GDL manque les FFTw, rangées sous /usr. | ||
| + | Je m'en suis sorti en faisant: | ||
| + | < | ||
| + | tar -zxf gdl-0.9rc3.tar.gz | ||
| + | cd gdl-0.9rc3 | ||
| + | autoreconf | ||
| + | ./configure --with-fftw=/ | ||
| + | make | ||
| + | </ | ||
| + | Dans ce cas, a la fin du configure, quelques lignes donnent des informations importantes sur les librairies effectivement utilisées: | ||
| + | |||
| + | < | ||
| + | [...] | ||
| + | GDL - GNU Data Language | ||
| + | ----- compilation options: --------------------------- | ||
| + | System: | ||
| + | Installation prefix: / | ||
| + | C++ compiler: | ||
| + | ----- optional libraries (consult README/ | ||
| + | wxWidgets: | ||
| + | Magick: | ||
| + | NetCDF: | ||
| + | HDF4: no | ||
| + | HDF5: no | ||
| + | FFTW: yes | ||
| + | libproject: | ||
| + | MPICH: | ||
| + | Python: | ||
| + | UDUNITS-2: | ||
| + | ----- notes on auxiliary files: ---------------------- | ||
| + | - routines implemented in GDL are located in src/pro/, | ||
| + | use GDL_PATH env. variable to inform GDL about their | ||
| + | location (files not installed by 'make install' | ||
| + | - consult MAP_INSTALL for details concerning auxiliary | ||
| + | files needed for mapping support | ||
| + | - SAVE and RESTORE procedures require *.pro files from | ||
| + | the CMSVLIB package (see README for details) | ||
| + | ------------------------------------------------------ | ||
| + | use ' | ||
| + | </ | ||
| + | après un appel ou je désactive pas mal de trucs : | ||
| + | |||
| + | < | ||
| + | ./ | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | </ | ||
| ===== Configuration (proposition de nouvelle version) ===== | ===== Configuration (proposition de nouvelle version) ===== | ||
| - | Ensuite, il faut définir les variables d' | + | Ensuite, il faut définir les variables d' |
| - | GDL_PATH indique les chemins vers les programmes (fichiers ASCII généralement de suffixe .pro). | + | GDL_PATH indique les chemins vers les programmes (fichiers ASCII généralement de suffixe .pro). |
| < | < | ||
| ######### Variables d' | ######### Variables d' | ||
| export GDL_PATH=~/ | export GDL_PATH=~/ | ||
| </ | </ | ||
| - | Le petit " | + | Le petit " |
| - | Ces programmes peuvent former de vastes bibliothèques, | + | Ces programmes peuvent former de vastes bibliothèques, |
| - | Bien evidemment, aussi bien GDL_PATH que GDL_STARTUP peuvent | + | Bien évidemment, aussi bien GDL_PATH que GDL_STARTUP peuvent |
| - | S'il est absent, le sous repertoire | + | S'il est absent, le sous répertoire |
| ===== Configuration (ancienne version) ===== | ===== Configuration (ancienne version) ===== | ||
| Ligne 85: | Ligne 384: | ||
| export GDL_STARTUP=~/ | export GDL_STARTUP=~/ | ||
| </ | </ | ||
| - | |||
| - | |||
| ===== Voir aussi ===== | ===== Voir aussi ===== | ||
| - | * **(en)** [[http:// | + | * **(en)** [[http:// |
| * **(fr)** [[http:// | * **(fr)** [[http:// | ||
| - | * **(fr)** [[http:// | + | * **(fr)** [[http:// |
| - | * **(fr)** [[http:// | + | * **(fr)** [[http:// |
| * **(en)** [[http:// | * **(en)** [[http:// | ||
| - | * **(fr)** [[http:// | + | * **(fr)** [[http:// |
| - | * **(en)** [[http:// | + | * **(en)** [[https:// |
| ---- | ---- | ||
| - | // | + | // |
