I've been trying to install support for ECW so I can load them in latest QGIS 3.6 (also tried in QGIS 3.4.4)
Having tried the following tutorials:
https://wiki.openstreetmap.org/wiki/ECW (gdal 2.2.3)
https://gist.github.com/1papaya/568c4580b1909071696c1cb119101823 (gdal 2.3.1)
Both appear to work and report back ECW support against gdal
gdalinfo –formats | grep ECW
ECW -raster- (rw): ERDAS Compressed Wavelets (SDK 3.x)
JP2ECW -raster,vector- (rw+v): ERDAS JPEG2000 (SDK 3.x)
However when opening QGIS I notice that key UI is missing – the little triangles next to all the processing toolbox processes are missing, and the whole of QGIS becomes unstable – for example it crashes to desktop when selecting plugins within the plugin manager.
I then have alot of trouble recovering QGIS to get the UI back – full removal and purge of all dependencies + QGIS reinstall does not restore it! have to carry out full ubuntu reinstall to get it all back, which is not ideal.
Is gdal completely independent per version install. as above tutorials focus on particular gdal download which you then appear to manipulate?
QGIS 3.6 appears to use gdal 2.2.3
QGIS 3.4.4 appears to use gdal 2.4.0
so far I've carried out above tutorials first then installed QGIS, should I perhaps install QGIS first then attempt to adjust the GDAL that QGIS installs as a dependency?
Best Answer
If you want to use a self-compiled GDAL with QGIS packages, you have to use exactly the same GDAL version that the packages are compiled against. For bionic (Ubuntu 18.04 and Linux Mint 19), You can find the version in https://qgis.org/ubuntu/dists/bionic/main/binary-amd64/Packages and https://qgis.org/ubuntugis/dists/bionic/main/binary-amd64/Packages if you search for the
gdal-abi
dependency.Currently this is GDAL 2.2.3 in the main Ubuntu repo and 2.3.2 in the Ubuntugis-unstable ppa.
https://trac.osgeo.org/gdal/wiki/ECW suggests to use the ECW SDK v 5.4 with GDAL 2.2.4 or newer.
UPDATE FROM THE COMMENTS
It seems to be necessary to install the
libpng-dev
package before self-compiling GDAL.Don't remove the packaged GDAL version, because this will remove QGIS and any other GDAL-dependant package too. Instead, copy the self-compiled libgdal files and the libNCSEcw files from
/usr/local/lib
to/usr/lib
.QGIS 2.18.28 from the ubuntugis unstable ppa (without using any qgis.org) installs fine along with the ECW driver, as well as QGIS 3.4 and QGIS 3.6 from
https://qgis.org/ubuntugis-ltr bionic
orhttps://qgis.org/ubuntugis bionic
. It even works for GDAL 2.2.3 and Qgis 3.6 fromhttps://qgis.org/ubuntu bionic
without any ubuntugis dependency.If you installed against ubuntugis-unstable, You have to update and recompile GDAL every time that ubuntugis-unstable updates GDAL. The GDAL version in the main ubuntu repo will not change, until you upgrade your OS to a newer version.