jeudi 17 décembre 2009

Disposer du support de l'ECW sous Ubuntu

Mise à jour des paquets, voir ici : http://geomatips.blogspot.com/2010/09/mise-jour-paquet-ecw-pour-ubuntu.html

A chaque version de Qgis et Mapserser, il faut en principe les recompiler pour disposer du support de l'ECW et JPEG2000 (plus de détails ici : Enhanced Compression Wavelet )dans nos logiciels SIG libres.

C'est assez pénible et c'est en recherchant sur le launchpad Ubuntu que j'ai découvert un paquet nommé gdal-ecw-src

Je me suis empressé de l'installer pour voir ce qu'il contenait :
- Un fichier Readme contenant l'aide et
- Un exécutable : /usr/bin/gdal-ecw-build

Le readme précise qu'une fois le sdk d'ermapper installé, il suffit de lancer gdal-ecw-build en précisant l'emplacement du répertoire d'installation du sdk.


Allons-y, passons à l'installation !

1) Pour le sdk :
- soit vous le compiler à la main à partir du code source disponible ici ECW JPEG2000 Codec SDK Source Code
Note : Compilation du sdk en 3 lignes
./configure --prefix=/usr #imperativement préciser le prefix sous Ubuntu Karmic Koala
make
sudo make install


- soit vous téléchargez directement le deb (libecw_3.3-1c2c3.1_i386.deb) sur le site de l'UMR Tetis ici : http://tetis.teledetection.fr/component/option,com_docman/task,cat_view/gid,215/dir,DESC/order,date/limit,5/limitstart,5/


2) Au niveau des dépendances, il faut que le dépôt d'ubuntugis soit présent ton votre sources.list. Je donne ci-dessous la méthode pour Ubuntu Karmic Koala pour les autres versions, référez vous à la doc ubunutu
Il suffit de taper dans un terminal :
sudo add-apt-repository ppa:ubuntugis/ubuntugis-unstable/ubuntu #On ajoute le dépôt
sudo apt-get update && sudo apt-get upgrade #On recharge et on met à jour la liste des paquets
sudo apt-get install gdal-bin gdal-ecw-src #On installe gdal et le paquet gdal-ecw-src


3) On peut maintenant créer le plugin gdal-ecw en tapant tout simplement :

sudo gdal-ecw-build /usr


Pour les plus curieux, cela créé un fichier .so (librairie sous gnu/linux) à cet emplacement : /usr/lib/gdal16plugins


4) Contrôler l'installation :
taper dans un terminal
gdalinfo --formats | grep ECW

Deux formats supplémentaires devraient apparaître :
ECW (rw): ERMapper Compressed Wavelets
JP2ECW (rw+): ERMapper JPEG2000


Enfin on pourrait lancer Qgis et lancer un ecw pour contrôler que cela fonctionne bien !

Pour les plus pressés (après avoir ajouté le dépôt du launchpad d'ubuntugis), voici les deux deb que j'ai compilé :
A installer dans l'ordre :
libecwj2_3.3-1_i386.deb Toutes version d'Ubuntu
gdal-ecw_1.6.1-1_i386.deb Pour Ubuntu 9.10 32bits uniquement

18 commentaires:

  1. Bonjour,
    Merci pour le tuto, c'est exactement ce que je cherchais :)
    J'ai essayé de télécharger les deb, mais le lien est mort ??
    Merci !
    Jérémy

    RépondreSupprimer
  2. Finalement ça marche après plusieurs tests et un peu de patience !
    Jérémy

    RépondreSupprimer
  3. Les liens sont bons, je confirme.

    Merci du retour Jeremy

    RépondreSupprimer
  4. bonjour,
    j'ai un soucis avec le serveur de clé. Est_ce que d'autres ont se soucis ?

    RépondreSupprimer
  5. Pour Les problèmes de clés, cf. forum.ubuntu-fr.org

    RépondreSupprimer
  6. Je viens de découvrir votre blog et laisser-moi vous dire que les tutos publiés sont très intéressants, surtout le support ECW sous ubuntu 9.10. J'ai également tenté d'installer le support ecw sous Ubuntu Hardy en utilisant les paquets que vous avez précompilés en .deb, ça n'a pas fonctionné, mais je soupçonne que le problème vient du fait que vous avez compilé les paquets avec la version 9.10 d'Ubuntu qui n'est pas compatible avec la version 8.04.

    Je vais télécharger les sources du support SDK D'ERDAS et les compiler.

    Je vous donnerai des nouvelles.

    Merci encore pour les excellents tutos

    Jiru

    RépondreSupprimer
  7. Bonjour jiru et merci pour le commentaire

    Voilà c'est ça ! C'est compilé avec Ubuntu 9.10

    Je penses que le problème vient surtout de la version de gdal. Là c'est une version 1.6.

    Par contre "libecwj2_3.3-1_i386.deb" est compatible toutes versions. Donc vous n'avez qu'à exécuter le script qui compile pour vous la lib pour gdal

    RépondreSupprimer
  8. Bonjour,

    De la doc Ubuntu à votre site... j'ai pu tester votre procédure.
    Ca marche sans problème je peux lire mes ecw sous Qgis.
    Merci pour cette comunication.
    Par ailleur j'ai aussi un problème avec l'adresse Tetis, j'y suis allé par un autre chemin : taper ecw sur le site Tetis et on arrives vite au but.

    RépondreSupprimer
  9. Bonjour,

    Tout d'abord un grand merci. Je me demande par contre s'il est possible d'installer le sdk sous un système 64 bits. Tout fonctionne bien sur du 32 ... mais je n'arrive vraiment pas à compiler sur du 64 bits (je ne suis pas pro dans le domaine).

    Merci

    RépondreSupprimer
  10. Bonjour et merci,

    Ça fonctionne vraiment bien. Par contre, quelqu'un a réussi à compiler le sdk sur ubuntu 64 bits. Je n'y arrive vraiment pas.

    Merci

    RépondreSupprimer
  11. Bravo et merci: J'ai enfin pu ouvrir les fichiers ECW correspndant à une BD-Ortho sur laquelle je devais travailler. Merci beaucoup pour ce post auquel je renverrai qui de droit.

    C'est un soulagement car mon seul plan B consistait à installer ArcGIS sur Windows XP en Virtualbox, ce qui m'aurait quand meme fait un peu suer...

    RépondreSupprimer
  12. Bonjour,
    Depuis Juin 2010, le fichier paquet gdal-ecw-src n'est plus disponible. Il est remplacé par libgdal-ecw-src.


    Ce qui a bien marché pour installation :

    installer les ppa

    installer gdal.bin

    télécharger puis installer directement le deb (libecw_3.3-1c2c3.1_i386.deb) sur le site de l'UMR Tetis ici : http://tetis.teledetection.fr/index.php?option=com_docman&task=doc_details&gid=235

    installer libgdal-ecw-src

    gdalinfo --formats | grep ECW

    RépondreSupprimer
  13. Bonjour Geomatips ! Et merci pour ce tuto mais...

    Étant sous Ubuntu 64bit j'ai tout tenté, j'ai compilé, installé en force les deb 32bit,mangé mes crayons et étranglé des petis chats !

    Au final lorsque je fait le "gdalinfo --formats | grep ECW" je n'ai que "ECW (rw): ERMapper Compressed Wavelets".

    Dans mon cas,je pensais que c'était bon (ouvrir des ecw dans QGIS) mais non, il me dit que ce sont des données non gérées... Lo pas compris !

    Si vous avez une simple idée ou autre chose je prends !! Mais en tous cas merci pour ce site !!

    Cordialement

    RépondreSupprimer
  14. Mise à jour ici des paquets => http://geomatips.blogspot.com/2010/09/mise-jour-paquet-ecw-pour-ubuntu.html

    RépondreSupprimer
  15. Merci pour ces mises à jour.
    Cependant j'ai une erreur à la vérification, je demande :
    gdalinfo --formats | grep ECW

    je reçois :
    ERROR 1: libNCSEcw.so.0: cannot open shared object file: No such file or directory

    Pourriez-vous m'aider ?
    Merci

    RépondreSupprimer
  16. J'avais le même problème, (ERROR 1 : .....), j'ai supprimé un fichier excédentaire signalé par synaptic, j'ai retapé :
    gdalinfo --formats | grep ECW
    et j'ai obtenu :
    jerome@Valparaiso:~$ gdalinfo --formats | grep ECW
    ECW (rw): ERMapper Compressed Wavelets
    JP2ECW (rw+): ERMapper JPEG2000

    RépondreSupprimer
  17. Je viens de faire une petite mise à jour de mon howto
    http://tetis.teledetection.fr/index.php?option=com_content&task=view&id=446&Itemid=157
    Il marche sur debian lenny/squeeze et je viens de le tester sur un ubuntugis chrooté dans une debian squeeze en 64 bits.

    RépondreSupprimer
  18. Ne pas oublier de faire un
    sudo ldconfig
    après installation des librairies, c'est la seule commande qu'il me manquait pour que cela fonctionne enfin sans l'erreur "ERROR 1: libNCSEcw.so.0: cannot open..."

    Merci pour tout.

    RépondreSupprimer