[gdal-dev] Issues building ECW/JP2ECW driver as a plugin on Ubuntu

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

[gdal-dev] Issues building ECW/JP2ECW driver as a plugin on Ubuntu

Luke
I can build the ECW/JP2ECW driver as a plugin (using 5.0 or 5.1 SDK) on Ubuntu 12.04 (GDAL 1.10) using the gdal-ecw-build script from from the ubuntugis-unstable libgdal-ecw package (https://launchpad.net/~ubuntugis/+archive/ubuntugis-unstable).

I have also built the ECW/JP2ECW driver as a plugin (using 5.1 SDK) on Ubuntu 14.04 by copying the makefile/configure scripts from the 12.04 ubuntugis-unstable libgdal-ecw package to a vanilla GDAL 1.11 source tree (frmts/ecw), compiling and installing to /usr/lib/gdalplugins/1.11.

On Ubuntu 14.04 the install looks ok when running gdal utilities:
$ gdalinfo --version
GDAL 1.11.0, released 2014/04/16
$ gdalinfo --formats|grep -i ecw
  ECW (rw+): ERDAS Compressed Wavelets (SDK 5.1)
  JP2ECW (rw+v): ERDAS JPEG2000 (SDK 5.1)

However, the ECW and JP2ECW drivers do not work in python:
$ python -c "from osgeo import gdal; print repr((gdal.GetDriverByName('ECW'),gdal.GetDriverByName('JP2ECW')))"
ERROR 1: /usr/lib/gdalplugins/1.11/gdal_ECW_JP2ECW.so: undefined symbol: GDALRegisterMe
ERROR 1: /usr/lib/gdalplugins/1.11/gdal_ECW_JP2ECW.so: undefined symbol: _ZTI22GDALJP2AbstractDataset
(None, None)

On Ubuntu 12.04 (with the plugin built using the gdal-ecw-build script and provided source package), different undefined symbol errors are reported when importing gdal in python.

$ python -c "from osgeo import gdal; print repr((gdal.GetDriverByName('ECW'),gdal.GetDriverByName('JP2ECW')))"
ERROR 1: /usr/lib/gdalplugins/1.10/gdal_ECW_JP2ECW.so: undefined symbol: _ZTI14GDALPamDataset
ERROR 1: /usr/lib/gdalplugins/1.10/gdal_ECW_JP2ECW.so: undefined symbol: _ZTI14GDALPamDataset
(None, None)

I reported the issue with 12.04 to UbuntuGIS (http://trac.osgeo.org/ubuntugis/ticket/34) last year, but there has been no resolution.

I can always build gdal itself from source with python and ECW support, but I'd like to easily build ECW support as a plugin so I can just rely on my package manager to keep everything else up to date.

Can anybody provide some guidance on how to compile the ECW/JP2ECW drivers as a plugin on Linux?


Regards
Luke

_______________________________________________
gdal-dev mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/gdal-dev
Reply | Threaded
Open this post in threaded view
|

Re: Issues building ECW/JP2ECW driver as a plugin on Ubuntu

Andre Joost
Am 14.08.2014 02:56, schrieb Luke Pinner:

>
> Can anybody provide some guidance on how to compile the ECW/JP2ECW drivers
> as a plugin on Linux?
>
>

I have written down my workflow here:

http://gis.stackexchange.com/questions/94870/unable-to-install-ecw-support-on-lubuntu-14-04

The plugin works in QGIS, but I have not tested it with python.

Maybe you should adress the matter to the ubuntugis mailinglist too.

Greetings,
André Joost

_______________________________________________
gdal-dev mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/gdal-dev
Reply | Threaded
Open this post in threaded view
|

Re: Issues building ECW/JP2ECW driver as a plugin on Ubuntu

Luke
Andre, doing this, you are building the plugin for gdal 1.11 with old gdal 1.10 code, which is not optimal as there were quite a few changes to the ECW/JP2ECW drivers between 1.10 and 1.11.   And it still does not solve the problem of not being able to use the drivers in python (in fact python segfaults immediately for me when trying to import gdal).

What I do is very similar, but use the makefile from libgdal-ecw and manually build (using the same commands as per `gdal-ecw-build`) against the gdal 1.11 tree.
Reply | Threaded
Open this post in threaded view
|

Re: Issues building ECW/JP2ECW driver as a plugin on Ubuntu

Luke
Luke wrote
...(in fact python segfaults immediately for me when trying to import gdal)...
When using the plugin built as per Andre's workflow.
Reply | Threaded
Open this post in threaded view
|

Re: [gdal-dev] Issues building ECW/JP2ECW driver as a plugin on Ubuntu

Luke
In reply to this post by Luke
I cross-posted to the UbuntuGIS mailing list (http://article.gmane.org/gmane.comp.gis.osgeo.ubuntu/941), but have had no response.

Are there any other drivers in the GDAL tree that support being built as plugins in a linux environment that I could have a look at and try and base a patch on?


Regards
Luke
Reply | Threaded
Open this post in threaded view
|

Re: Issues building ECW/JP2ECW driver as a plugin on Ubuntu

Andre Joost
Am 21.08.2014 07:55, schrieb Luke:
> I cross-posted to the UbuntuGIS mailing list
> (http://article.gmane.org/gmane.comp.gis.osgeo.ubuntu/941), but have had no
> response.
>

Unfortunately, yes. There seems to be little activity on the list recently.

> Are there any other drivers in the GDAL tree that support being built as
> plugins in a linux environment that I could have a look at and try and base
> a patch on?
>
>

The bin\gdalplugins folder contains GEOR, MG4Lidar, MrSID, FILEGDB, OCI
and SOSI. I guess your driver should work in a similar way.

I don't have any skills in C coding and compiling, so I can't help you
on that.

Greetings,
André Joost

_______________________________________________
gdal-dev mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/gdal-dev