Saturday, 12 August 2017

How to force QGIS to use GDAL version?



I'm using QGIS LTR 2.14.7 running on debian. 2 versions of GDAL are installed on my computer (1.10 and 2.0).



  • 1.10 is out of box GDAL version (doesn't support ECW).

  • 2.0 is compiled (by me) to support ECW.


In QGIS I change system environment libraries like it: GDAL_DATA=/usr/local/share/gdal (I've installed GDAL 2 in this path).


But QGIS continues to use GDAL 1.10 version and not GDAL 2. Have you an idea to force QGIS to use GDAL 2?


I can't uninstall GDAL 1 because QGIS needs this version to start (version of official repositories).


I've tried "dirty" solution by replacing existing symbolic link:


/usr/lib/libgdal.so.1 -> libgdal.so.1.17.1


by:


/usr/lib/libgdal.so.1 -> /usr/local/lib/libgdal.so.20

This method permit to read ECW files.


But all modifications on a integer field make troubles. I've read that GDAL 1.0 use 32bits integer and GDAL 2.0 uses 64bits integer. So QGIS will not update field (type error: type not match with field type).



Answer



You cannot just run QGIS with a different GDAL version than it was compiled against. It might work for minor updates (if they are ABI compatible) but will certainly not work with a major version change (1.x to 2.x).


So the answer is: if you compile GDAL yourself, also compile QGIS yourself.


No comments:

Post a Comment

arcpy - Changing output name when exporting data driven pages to JPG?

Is there a way to save the output JPG, changing the output file name to the page name, instead of page number? I mean changing the script fo...