Error due to missing libgfortran3, while libgfortran4 is installed (OpenSUSE Linux distribution)

Hi,

I am intending to run a SNAP processing chain to compute interferometric coherence (including back-geocoding, deburst, coherence estimation, terrain correction) on Linux (OpenSUSE distribution). I get an error, requiring the installation of libgfortran3: ā€¦
ā€¦
ā€“ org.jblas ERROR Couldnā€™t load copied link file: java.lang.UnsatisfiedLinkError: /tmp/jblas7960198414784257507/libjblas_arch_flavor.so: libgfortran.so.3: cannot open shared object file: No such file or directory.

On Linux 64bit, you need additional support libraries.
You need to install libgfortran3.

For example for debian or Ubuntu, type ā€œsudo apt-get install libgfortran3ā€
ā€¦

libgfortran4 is installed on the servers. Tried reinstalling SNAP latest version, same error. Does SNAP specifically require version 3 of the library, no later version?

Thank you!

hi, same problem here, latest SNAP.
any solutions?

running on debian, the distribution offers libgfortran starting at version 4ā€¦

thank you

Same problem here, even when installing libgfortran3 !

Workaround that should work on Debian buster, bullseye and unstable (and possibly Ubuntu and other derivatives): sudo apt-get install jblas.

Explanation: it seems that JBlas code searches for system-wide native libraries before trying to use those provided by the Maven JAR. Thus installing the Debian package, which has the native library correctly compiled, makes everything work. Debian is currently providing version 1.2.4 or JBlas (the latest released), the same used by SNAP. If at some point they go out-of-sync this might stop working. However it seems that JBlas is dormant, so probably there wonā€™t be new releases soon.

Does this work for you?

2 Likes

We noticed for other libs also that they the search for native libs does not work as it should. And we compiled them on our own. It seems that something in gernal has changed or several people are doing the same error :slight_smile:

I donā€™t understand, why do you say that the search for native libs does not work as it should? The fact of searching system-wide libraries before those provided by the JAR in this case is beneficial, because the system-wide libraries are more up-to-date and are compiled coherently with the rest of the system. Am I missing something?

Yes, they are more recent, but maybe not compatible anymore with the library used by e.g. SNAP. SNAP or other application are build with certain versions of the libraries and if they are shipped with the application they should be picked up.

Ok, I see. In the case of JBlas, though, the version is the same (1.2.4), but in general there could be problems.

the problem of libgfortran3 has been kindly resolved thanks to gnwiii :slightly_smiling_face: :slightly_smiling_face:
because ā€˜libfortran3ā€™ from NASAā€™s OCSSW software ā€œworks for usā€. The NASA software is distributed as git bundles, but libgfortran.so.3 was added to the git repository after the bundle was created, so you need to download and extract the bundle and then
git pull to get libgfortran.so.3 :

The solution is here:

FYI, it seems that the JBlasā€™ devs addressed the issue. I havenā€™t tested it yet. Maybe SNAP could consider updating its JBlas requirements?

2 Likes