I tried to configure the snappy on linux with python 2.7.8 , java 1.8.0_131, and jpy version 0.8.0 (which is installed independently at the system python site-package directory).
However, installation codes are trying (and failing) to install it again from using a binary of wheel inside a jar file. The wheel file includes a jpy.so which is incompatible with the RedHat 6 system (requires a newer glibc).
Running on a RedHat 6.9 (Santiago) system
procyon> which python
/usr/local/python/2.7.8/bin/python
procyon> echo $JAVA_HOME
/afs/glue.umd.edu/software/java/java8/sys
procyon> ls $JAVA_HOME/
COPYRIGHT LICENSE README.html THIRDPARTYLICENSEREADME-JAVAFX.txt* THIRDPARTYLICENSEREADME.txt bin/ db/ include/ javafx-src.zip* jre/ lib/ man/ release src.zip
procyon> python -c ‘import jpy; print jpy.file’
/usr/local/python/2.7.8/lib/python2.7/site-packages/jpy-0.8.0-py2.7-linux-x86_64.egg/jpy.so
procyon>
procyon>
procyon> bash ./esa-snap_all_unix_5_0.sh
Unpacking JRE …
Preparing JRE …
Starting Installer …
[SNAP Setup Wizard]
Welcome screen page:
click next
License Agreement page:
accept, click next
SNAP User Data Page:
Yes, try deleting all SNAP user data
click next
Select Destination Directory page
/homes/payerle/localhome/esa-snap/test-install
click next
Popup: Directory already exists:
install anyway: yes
Select Components page
(just keep with defaults)
click next
Select Directory for Symlinks page
/homes/payerle/localhome/esa-snap/test-symlinks
click next
Select Python page
check Configure SNAP for use with python
Python executable: /usr/local/python/2.7.8/bin/python
next
Installing
Completing page:
click finish
[splash screen shows up for about 1 minute, then goes away. No errors, etc. reported
to command line, etc]
However,
~/.snap/snap-python/snappy/snappyutil.log has the following:
INFO: Installing from Java module ‘/homes/payerle/localhome/esa-snap/test-install/snap/modules/org-esa-snap-snap-python.jar’
WARNING: Architecture requirement possibly not met: Python is x86_64 but JVM requires amd64
INFO: Installing jpy…
INFO: Extracting ‘lib/jpy-0.8.0-cp27-none-linux_x86_64.whl’ from ‘/homes/payerle/localhome/esa-snap/test-install/snap/modules/org-esa-snap-snap-python.jar’
INFO: Unzipping ‘/afs/glue.umd.edu/home/glue/p/a/payerle/home/.snap/snap-python/snappy/lib/jpy-0.8.0-cp27-none-linux_x86_64.whl’
INFO: Configuring jpy…
INFO: jpy Python API configuration written to ‘/afs/glue.umd.edu/home/glue/p/a/payerle/home/.snap/snap-python/snappy/jpyconfig.py’
INFO: jpy Java API configuration written to ‘/afs/glue.umd.edu/home/glue/p/a/payerle/home/.snap/snap-python/snappy/jpyconfig.properties’
INFO: Configuring snappy…
INFO: snappy configuration written to ‘/afs/glue.umd.edu/home/glue/p/a/payerle/home/.snap/snap-python/snappy/snappy.ini’
INFO: Importing snappy for final test…
ERROR: Configuration failed
Traceback (most recent call last):
File “./snappyutil.py”, line 261, in _main
force=args.force)
File “./snappyutil.py”, line 210, in _configure_snappy
import(‘snappy’)
File “/afs/glue.umd.edu/home/glue/p/a/payerle/home/.snap/snap-python/snappy/…/snappy/init.py”, line 64, in
import jpy
ImportError: /lib64/libc.so.6: version GLIBC_2.14' not found (required by /afs/glue.umd.edu/home/glue/p/a/payerle/home/.snap/snap-python/snappy/../snappy/jpy.so) If I then run procyon> ./snappy-conf /usr/local/python/2.7.8/bin/python Configuring SNAP-Python interface... java.io.IOException: Python configuration failed. Command [/usr/local/python/2.7.8/bin/python ./snappyutil.py --snap_home /export/data/localhome/home/payerle/esa-snap/test-install2 --java_module /export/data/localhome/home/payerle/esa-snap/test-install2/snap/modules/org-esa-snap-snap-python.jar --force --log_file ./snappyutil.log --java_home /export/data/localhome/home/payerle/esa-snap/test-install2/jre --req_arch amd64] failed with return code 30. Please check the log file '/homes/payerle/.snap/snap-python/snappy/snappyutil.log'. at org.esa.snap.python.PyBridge.configureJpy(PyBridge.java:223) at org.esa.snap.python.PyBridge.installPythonModule(PyBridge.java:147) at org.esa.snap.rcp.cli.SnapArgsProcessor.processPython(SnapArgsProcessor.java:103) at org.esa.snap.rcp.cli.SnapArgsProcessor.process(SnapArgsProcessor.java:49) at org.netbeans.modules.sendopts.DefaultProcessor.process(DefaultProcessor.java:202) at org.netbeans.spi.sendopts.Option$1.process(Option.java:387) at org.netbeans.api.sendopts.CommandLine.process(CommandLine.java:317) at org.netbeans.modules.sendopts.HandlerImpl.execute(HandlerImpl.java:62) at org.netbeans.modules.sendopts.Handler.cli(Handler.java:69) at org.netbeans.CLIHandler.notifyHandlers(CLIHandler.java:234) at org.netbeans.core.startup.CLICoreBridge.cli(CLICoreBridge.java:82) at org.netbeans.CLIHandler.notifyHandlers(CLIHandler.java:234) at org.netbeans.CLIHandler$1.exec(CLIHandler.java:268) at org.netbeans.CLIHandler.finishInitialization(CLIHandler.java:447) at org.netbeans.MainImpl.finishInitialization(MainImpl.java:256) at org.netbeans.Main.finishInitialization(Main.java:92) at org.netbeans.core.startup.Main.start(Main.java:316) at org.netbeans.core.startup.TopThreadGroup.run(TopThreadGroup.java:123) at java.lang.Thread.run(Thread.java:745) Python configuration error: Python configuration failed. Command [/usr/local/python/2.7.8/bin/python ./snappyutil.py --snap_home /export/data/localhome/home/payerle/esa-snap/test-install2 --java_module /export/data/localhome/home/payerle/esa-snap/test-install2/snap/modules/org-esa-snap-snap-python.jar --force --log_file ./snappyutil.log --java_home /export/data/localhome/home/payerle/esa-snap/test-install2/jre --req_arch amd64] failed with return code 30. Please check the log file '/homes/payerle/.snap/snap-python/snappy/snappyutil.log' With snappyutil.log again containing INFO: Installing from Java module '/export/data/localhome/home/payerle/esa-snap/test-install2/snap/modules/org-esa-snap-snap-python.jar' WARNING: Architecture requirement possibly not met: Python is x86_64 but JVM requires amd64 INFO: Installing jpy... INFO: Extracting 'lib/jpy-0.8.0-cp27-none-linux_x86_64.whl' from '/export/data/localhome/home/payerle/esa-snap/test-install2/snap/modules/org-esa-snap-snap-python.jar' INFO: Unzipping '/afs/glue.umd.edu/home/glue/p/a/payerle/home/.snap/snap-python/snappy/lib/jpy-0.8.0-cp27-none-linux_x86_64.whl' INFO: Configuring jpy... INFO: jpy Python API configuration written to '/afs/glue.umd.edu/home/glue/p/a/payerle/home/.snap/snap-python/snappy/jpyconfig.py' INFO: jpy Java API configuration written to '/afs/glue.umd.edu/home/glue/p/a/payerle/home/.snap/snap-python/snappy/jpyconfig.properties' INFO: Configuring snappy... INFO: snappy configuration written to '/afs/glue.umd.edu/home/glue/p/a/payerle/home/.snap/snap-python/snappy/snappy.ini' INFO: Importing snappy for final test... ERROR: Configuration failed Traceback (most recent call last): File "./snappyutil.py", line 261, in _main force=args.force) File "./snappyutil.py", line 210, in _configure_snappy __import__('snappy') File "/afs/glue.umd.edu/home/glue/p/a/payerle/home/.snap/snap-python/snappy/../snappy/__init__.py", line 64, in <module> import jpy ImportError: /lib64/libc.so.6: version
GLIBC_2.14’ not found (required by /afs/glue.umd.edu/home/glue/p/a/payerle/home/.snap/snap-python/snappy/…/snappy/jpy.so)
Is there a way to force the scripts/codes to use the system installed jpy package?
Is there a way/are there instructions to install the python component manually (without using the scripts/codes)?
If you have further questions/ comments about the our problem, please feel free to send me a email.
Thank you
Jongmin Park