[Qgis-user] Unable to open MrSID file in QGIS even if gdalinfo can read it
Even Rouault
even.rouault at spatialys.com
Fri Oct 4 09:52:19 PDT 2024
Le 04/10/2024 à 18:06, Andrew Plowright a écrit :
> Thanks again Even and Fernando, you've both provided a lot of helpful
> information that has turned this into a very instructive Linux
> learning opportunity.
>
> Even: can I confirm that, in the third option you suggested (the "less
> ugly alternative"), this would involve:
>
> 1. Installing QGIS using Software Manager (or any other way, just not
> necessarily building it from source)
> 2. Building a second instance of GDAL from source which has the same
> version as whatevever GDAL version is created by the QGIS installation
> (ex.: 3.8.4) and which is built with the Mr Sid driver.
> 3. This second instance of GDAL is given its own secluded
> /opt/gdal_3_8_4 folder to keep it separate from /usr
> 4. Setting GDAL_DRIVER_PATH will make GDAL search
> /opt/gdal_3_8_4/lib/gdalplugins for additional plugins, such as the
> MrSid driver. This should affect any instance of GDAL, whether I'm
> running it through QGIS or through the command line?
>
> Did I get all that correct?
yes
>
> On Sat, Sep 28, 2024 at 10:33 AM Even Rouault
> <even.rouault at spatialys.com> wrote:
>
> Andrew,
>
>
>> $ ldd /bin/qgis.bin | grep gdal
>>
>> libgdal.so.34 => /lib/x86_64-linux-gnu/libgdal.so.34
>> (0x00007a0581a00000)
>>
>> But I'm not sure what to do with that information.
>
> /lib/x86_64-linux-gnu/libgdal.so.34 is the version of GDAL that
> comes with package manager, so 3.8.4 here
>
> I'm not sure how you are familiar with the dynamic linking
> concepts and tools, but if you're not, reading
> https://opensource.com/article/22/5/dynamic-linking-modular-libraries-linux
> or related resources on dynamic linking might help you understand
> why those seemlingly "weird" behaviors are totally explainable.
> Takes time, and even with experience, mixing up several versions
> of a library on a system and being confused is not uncommon
>
> I'm going to hate myself for the below suggestion, and you
> probably too when it will hit you back in the face (so forget I've
> told you about it ;-), ... but ... to quickly workaround your
> issue, you can do:
>
> sudo ln -s /usr/lib/libgdal.so.35 /usr/lib/libgdal.so.34 #
> i'm already hating myself
>
> sudo mv /lib/x86_64-linux-gnu/libgdal.so.34
> /lib/x86_64-linux-gnu/libgdal.so.34.disabled # I'm hating
> myself even more...
>
> And now launch QGIS.... As GDAL keeps a backwards compatible C
> ABI, this ugly substitution of the expected GDAL 3.8.4 version at
> build time is supposed to (mostly) work. That said, you might run
> in occasional bugs, where QGIS tries to workaround GDAL specific
> bug, based on the version of GDAL QGIS was built against...
>
> OK, I believe you've been sufficienly warned this is *not* the
> normal way of proceeding, just a quick&dirty workaround
>
> To undo the above mess:
>
> sudo mv /lib/x86_64-linux-gnu/libgdal.so.34.disabled
> /lib/x86_64-linux-gnu/libgdal.so.34
>
> sudo mv /usr/lib/libgdal.so.34 /usr/lib/libgdal.so.34.disabled
> (i'm always nervous doing a rm in /usr territory, so I tend to
> just rename ...)
>
> The clean solution would be that you rebuild QGIS against your
> installed GDAL, but that would be for another episode. Another
> friendly advice would be that when doing a custom build you don't
> do CMAKE_INSTALL_PREFIX=/opt , but here something like
> CMAKE_INSTALL_PREFIX=/opt/gdal_3_10_master to avoid messing with
> /usr which should be only the territory of your package manager tool.
>
>
> Another less ugly alternative would be that you download
> http://download.osgeo.org/gdal/3.8.4/gdal-3.8.4.tar.gz, build it
> with support of the MrSID driver as a plugin, with
> -DGDAL_ENABLE_DRIVER_MRSID_PLUGIN=ON, install it in
> /opt/gdal_3_8_4, and then just set the
> GDAL_DRIVER_PATH=/opt/gdal_3_8_4/lib/gdalplugins environment
> variable. That way you would use the system GDAL library with just
> the addition of the MrSID driver.
>
> Actually that might not be terribly harder to do than my above
> hacks, so I'm definitely encouraging you to explore that way
>
> And ... you should know that the company behind the MrSID SDK has
> declared they won't ever release any new binary version of it.
> This means that at most in a few years, this SDK will likely be
> totally unusable on modern systems. So everyone using SID files
> had better convert them to something else, like COG, when they
> still have a chance...
>
> /me taking a passport to an undisclosed country without
> extradition agreement.
>
> Even
>
> --
> http://www.spatialys.com
> My software is free, but my time generally not.
>
--
http://www.spatialys.com
My software is free, but my time generally not.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-user/attachments/20241004/c4c5215d/attachment.htm>
More information about the QGIS-User
mailing list