<div class="xam_msg_class">
<div style="font: normal 13px Arial; color:rgb(0, 0, 0);">Hi all,<div>I'm having issues trying to compile GDAL with MrSID support.</div><div><br></div><div>A preliminary question I have is: is MrSID write support available in GDAL, provided one has LizardTech's encoding SDK (ESDK)?</div><div>The documentation is a bit confusing on this point, e.g. on this page http://www.gdal.org/formats_list.html MrSID creation support is denied, whereas on this page https://trac.osgeo.org/gdal/wiki/MrSID it is stated that it requires an ESDK.</div><div><br></div><div>I have two versions of the MrSID SDK from LizardTech, Geo_ESDK-7.0.0.2167 (both encoding and decoding) and MrSID_DSDK-9.1.0.4045 (decoding only).</div><div>The platform I'm building on is:</div><div>CentOS 5.11 64-bit</div><div>gcc 4.1.2 20080704 (Red Hat 4.1.2-55)</div><div><br></div><div>I tried several versions of GDAL, 1.7.1, 1.7.3, 1.9.2, 2.0.0 but I keep getting the same error, when linking to <span style="background-color: transparent;">Geo_ESDK-7.0.0.2167:</span></div><div><span style="background-color: transparent;"><div>g++  gdalinfo.o  -L/root/gdal/gdal-1.7.1 -lgdal  -ljpeg -ltiff -lpng -lz  -lm -lrt -ldl     -L/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release -L/root/gdal/Geo_ESDK-7.0.0.2167/3rd-party/lib/Release -lltidsdk -lpthread -llt_kakadu -lxmlparse    -o gdalinfo</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3MessageWriter::writeMessage(LizardTech::MG3Message&)'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `QuantizeBuffer'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3VersionRequestMessage::MG3VersionRequestMessage()'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3MessageWriter::initialize()'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3DataRequestMessage::MG3DataRequestMessage()'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3PacketRequestMessage::MG3PacketRequestMessage()'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3DataReplyMessage::MG3DataReplyMessage(unsigned int, LizardTech::LTIOStreamInf*)'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3MSEReplyMessage::~MG3MSEReplyMessage()'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3MessageReader::nextMessage()'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3MSEReplyMessage::MG3MSEReplyMessage(unsigned int, LizardTech::LTIOStreamInf*)'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3MessageReader::initialize()'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3PacketReplyMessage::MG3PacketReplyMessage(unsigned int, LizardTech::MG3PacketType const&, LizardTech::MG3Packet*)'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3PlaneRangeDecoder::nextRange(unsigned long long&, bool&)'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3VersionRequestMessage::~MG3VersionRequestMessage()'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MSEAdjuster::nominalMSE(LizardTech::MG3PlaneDesc const&, LizardTech::MG3ImageInfo const&)'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3DataRequestMessage::~MG3DataRequestMessage()'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3PacketReplyMessage::~MG3PacketReplyMessage()'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3DataReplyMessage::~MG3DataReplyMessage()'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3MSERequestMessage::MG3MSERequestMessage()'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3PacketRequestMessage::~MG3PacketRequestMessage()'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3MessageReader::MG3MessageReader(LizardTech::LTIOStreamInf&)'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3PlaneRangeDecoder::done()'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3MessageReader::skipMessageBody()'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3VersionReplyMessage::~MG3VersionReplyMessage()'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3PlaneRangeDecoder::begin()'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3VersionReplyMessage::MG3VersionReplyMessage(LizardTech::MG3Version const*)'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3MessageWriter::~MG3MessageWriter()'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3PlaneRangeEncoder::nextRange(unsigned long long, bool)'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3MessageReader::~MG3MessageReader()'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3MSERequestMessage::~MG3MSERequestMessage()'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3MessageReader::getMessageBody(LizardTech::MG3Message&)'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3MessageWriter::done()'</div><div>/root/gdal/Geo_ESDK-7.0.0.2167/lib/Release/libltidsdk.so: undefined reference to `LizardTech::MG3MessageWriter::MG3MessageWriter(LizardTech::LTIOStreamInf&)'</div><div><br></div><div>I tried both --with-libtool and --without-libtool options and I get the same error. Looks like <span style="background-color: transparent;">libltidsdk.so contains undefined references to functions... which should be defined in the library itself?</span></div><div><span style="background-color: transparent;"><br></span></div><div><span style="background-color: transparent;">If I try to link to </span><span style="background-color: transparent;">MrSID_DSDK-9.1.0.4045 (gcc41 version), I get a different error on GDAL 1.7.1 through 1.9.2:</span></div><div><span style="background-color: transparent;"><div>/bin/sh /root/gdal/gdal-1.9.2/libtool --mode=link<span class="Apple-tab-span" style="white-space:pre">  </span>g++  gdalinfo.lo  /root/gdal/gdal-1.9.2/libgdal.la -o gdalinfo</div><div>libtool: link: g++ .libs/gdalinfo.o -o .libs/gdalinfo  /root/gdal/gdal-1.9.2/.libs/libgdal.so -L/root/gdal/MrSID_DSDK-9.1.0.4045-linux.x86-64.gcc41/Raster_DSDK//3rd-party/lib -L/root/gdal/MrSID_DSDK-9.1.0.4045-linux.x86-64.gcc41/Raster_DSDK//lib -ljpeg -lpng -lz -lrt -ldl -lltidsdk -lpthread  -Wl,-rpath -Wl,/usr/local/lib</div><div>/root/gdal/gdal-1.9.2/.libs/libgdal.so: undefined reference to `LizardTech::LTISceneBuffer::LTISceneBuffer(LizardTech::LTIPixel const&, unsigned int, unsigned int, void**)'</div><div>/root/gdal/gdal-1.9.2/.libs/libgdal.so: undefined reference to `LizardTech::LTISceneBuffer::LTISceneBuffer(LizardTech::LTIPixel const&, unsigned int, unsigned int, void**)'</div><div>/root/gdal/gdal-1.9.2/.libs/libgdal.so: undefined reference to `LizardTech::LTISceneBuffer::getTotalBandData(unsigned short) const'</div><div>/root/gdal/gdal-1.9.2/.libs/libgdal.so: undefined reference to `LizardTech::J2KImageReader::initialize(LizardTech::LTIOStreamInf&, bool, float, bool, int)'</div></span></div><div><span style="background-color: transparent;"><br></span></div><div><span style="background-color: transparent;">The only successful combination I found so far has been GDAL 2.0.0 and </span><span style="background-color: transparent;">MrSID_DSDK-9.1.0.4045: it's something, but I'd very much prefer to link with </span><span style="background-color: transparent;">Geo_ESDK-7.0.0.2167 to have read / write support.</span></div><div><br></div><div><br></div><div>Has anybody experienced the same issues?</div></span></div><div><br><br><div>Best regards,</div><div>Stefano Costa</div><div> </div><div>==</div><div>GeoServer Professional Services from the experts! Visit</div><div>http://goo.gl/it488V for more information.</div><div>==</div><div>Dott. Stefano Costa</div><div>Senior Software Engineer</div><div> </div><div>GeoSolutions S.A.S.</div><div>Via Poggio alle Viti 1187</div><div>55054  Massarosa (LU)</div><div>Italy</div><div>phone: +39 0584 962313</div><div>fax:     +39 0584 1660272</div><div> </div><div>http://www.geo-solutions.it</div><div>http://twitter.com/geosolutions_it</div><div> </div><div>-------------------------------------------------------</div><div>AVVERTENZE AI SENSI DEL D.Lgs. 196/2003</div><div>Le informazioni contenute in questo messaggio di posta elettronica e/o</div><div>nel/i file/s allegato/i sono da considerarsi strettamente riservate.</div><div>Il loro utilizzo è consentito esclusivamente al destinatario del</div><div>messaggio, per le finalità indicate nel messaggio stesso. Qualora</div><div>riceviate questo messaggio senza esserne il destinatario, Vi preghiamo</div><div>cortesemente di darcene notizia via e-mail e di procedere alla</div><div>distruzione del messaggio stesso, cancellandolo dal Vostro sistema.</div><div>Conservare il messaggio stesso, divulgarlo anche in parte,</div><div>distribuirlo ad altri soggetti, copiarlo, od utilizzarlo per finalità</div><div>diverse, costituisce comportamento contrario ai principi dettati dal</div><div>D.Lgs. 196/2003.</div><div> </div><div>The information in this message and/or attachments, is intended solely</div><div>for the attention and use of the named addressee(s) and may be</div><div>confidential or proprietary in nature or covered by the provisions of</div><div>privacy act (Legislative Decree June, 30 2003, no.196 - Italy's New</div><div>Data Protection Code).Any use not in accord with its purpose, any</div><div>disclosure, reproduction, copying, distribution, or either</div><div>dissemination, either whole or partial, is strictly forbidden except</div><div>previous formal approval of the named addressee(s). If you are not the</div><div>intended recipient, please contact immediately the sender by</div><div>telephone, fax or e-mail and delete the information in this message</div><div>that has been received in error. The sender does not give any warranty</div><div>or accept liability as the content, accuracy or completeness of sent</div><div>messages and accepts no responsibility  for changes made after they</div><div>were sent or for other risks which arise as a result of e-mail</div><div>transmission, viruses, etc.</div></div></div>
</div>