ImageIO-ext GDAL extensions
This documentation is no longer maintained. Please see the new GeoServer documentation at http://docs.geoserver.org
The ImageIO-ext GDAL extensions allow to leverage the GDAL libraries to read selected coverage formats. GDAL is able to ready many formats, but for the moment we do support only a few that are of general interest and that can be legally redistributed and operated in an open source server (so no ECW support, nor Kakadu JP2 support out of the box).
Configuration
Geoserver Version 1.7.4 and above comes with GDAL-ImageIO-Extension already available on it.
You have to download and configure the native libraries needed to actually read the coverage data. They are available at the imageio-ext download page.
(Select the last stable release -> native-libraries -> proper OS-specific version and download it).
If you are on windows, be sure to deploy the GDAL DLLs on the PATH (As an instance on your JDK/bin folder, provided that is on the PATH).
On Linux, be sure to add to the LD_LIBRARY_PATH environment variable, the folder where you have extracted the SOs .
Finally, you need to get the GDAL's CRS definitions from here. Then, set a GDAL_DATA environment variable to the folder where you have extracted this zip file.
Note that if you want to support ECW in a server, you should download binaries containing also ECW decoding capabilities IF AND ONLY IF you have bought a license from ERDAS. (See ECW licensing details here). In case you haven't bought such a license, you aren't allowed to download binaries supporting ECW (to be used in geoserver).
On windows, you need to get the ECW JPEG2000 Codec SDK from ERDAS (When downloaded, take the vc71 libs) and set a GDAL_DRIVER_PATH environment variable pointing to the folder where you have downloaded them.
Post-installation checks
When running GeoServer, if everything is successfull, new coverage plugins now should appear in the web admin tool at: Welcome -> Config -> WCS -> CoveragePlugins
Supporting other formats
GDAL supports many formats not included in this binary distribution. If you need any of them, you'll need to do a little Java coding. Get in touch with the imageio-ext developers:
- The GeoTools ImageIO-Ext page
- ImageIO-ext
If coding does not suits your needs, check with the Commercial Support options.
How to get ECW and Kakadu support
ECW and Kakadu support already exist code wise, but we cannot redistribute the binaries due to license restrictions. If you need a build that supports those readers, first make sure you have a valid server side license, and either:
for ECW:
- download the ECW ImageCompression SDK from ErMapper site.
for Kakadu:
- Follow the instructions to build your custom ImageIO-ext binary (see the ImageIO-ext web site)
- Contact some company to build a binary for you. You best bet is with GeoSolutions, the company that contributed the ImageIO-ext plugins in the first place
This section is only for Previous Geoserver Versions (1.7.0 - 1.7.2) users
In case you are working with previous Geoserver versions (1.7.0 - 1.7.2) you can use these instructions:
Download the libraries that do suit your GeoServer version and operating system here:
- GeoServer 1.7.0 onwards:
- windows: windows-gdal-mrsid_1.7.0_onwards.zip
- linux: linux-gdal-mrsid_1.7.0_onwards.zip
- for all platforms: gdal_data_1.7.0_onwards.zip
To use these libs, be sure your JAVA_HOME environment variable is properly configured. Then:
- On Windows: copy the downloaded DLLs to your $JAVA_HOME/bin
- On Linux: if JAVA_HOME links to a JDK run the following command (requires superuser privileges): sudo unzip -o linux-gdal-mrsid.zip -d $JAVA_HOME/jre/lib/i386. In case JAVA_HOME links to a JRE, use the same command with -d $JAVA_HOME/lib/i386 as destination directory specification. The unzip command will keep symbolic links.
Then setup the GDAL_DATA directory, that allows to support extra EPSG codes:
- Extract gdal_data.zip somewhere on your machine (as an instance C:/gdal_data).
- Set a GDAL_DATA environment variable linking to the directory where you have stored data contained in gdal_data.zip, making sure the web container running GeoServer will pick it up.