[GRASS-dev] Fwd: grass.session error with ctypes

Markus Neteler neteler at osgeo.org
Wed Apr 15 02:21:02 PDT 2020


Hi,

Carrying over this strange new issue to this list, ideas are welcome:

---------- Forwarded message ---------
Von: pietro <notifications at github.com>
Date: Mi., 15. Apr. 2020, 11:11
Subject: Re: [zarch/grass-session] grass.session error after merge of #14
(#16)

@neteler <https://github.com/neteler> thank you to open this issue, I was
not aware of this problem, I'm on fedora right now and the installation it
seems to be fine.

The issue is that grass is providing the wrong GISBASE, the command:

# grass --config path
/usr/local/grass79

Return this directory that do not exist.

A possible solution to fix this could be to move the installation of
grass-session after the proper link to the GISBASE directory are created,
see this commit
<https://github.com/zarch/grass/commit/5cfebfeeff6d746039d92d90fc6d2cc819e7e0fe>
.

However now the installation process is failing because call the ctypes
function ctypes.CDLL(lib, mode=1) in the load_libs function raise an OSError
:

Step 37/52 : RUN pip3 install --upgrade pip six grass-session
 ---> Running in 073ae793bf9e
Requirement already up-to-date: pip in /usr/lib/python3.8/site-packages (20.0.2)
Collecting six
  Downloading six-1.14.0-py2.py3-none-any.whl (10 kB)
Collecting grass-session
  Downloading grass-session-0.4.tar.gz (9.0 kB)
    ERROR: Command errored out with exit status 1:
     command: /usr/bin/python3 -c 'import sys, setuptools, tokenize;
sys.argv[0] = '"'"'/tmp/pip-install-ia21xtta/grass-session/setup.py'"'"';
__file__='"'"'/tmp/pip-install-ia21xtta/grass-session/setup.py'"'"';f=getattr(tokenize,
'"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"',
'"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))'
egg_info --egg-base
/tmp/pip-install-ia21xtta/grass-session/pip-egg-info
         cwd: /tmp/pip-install-ia21xtta/grass-session/
    Complete output (12 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-install-ia21xtta/grass-session/setup.py", line
11, in <module>
        import grass_session  # isort:skip
      File "/tmp/pip-install-ia21xtta/grass-session/grass_session/__init__.py",
line 4, in <module>
        from grass_session.session import (
      File "/tmp/pip-install-ia21xtta/grass-session/grass_session/session.py",
line 476, in <module>
        load_libs(GISBASE)
      File "/tmp/pip-install-ia21xtta/grass-session/grass_session/session.py",
line 355, in load_libs
        raise RuntimeError(
    RuntimeError: Cannot load all the following GRASS GIS libraries
from ['/usr/local/grass79/lib/libgrass_arraystats.7.9.so',
'/usr/local/grass79/lib/libgrass_arraystats.so',
'/usr/local/grass79/lib/libgrass_bitmap.7.9.so',
'/usr/local/grass79/lib/libgrass_bitmap.so',
'/usr/local/grass79/lib/libgrass_btree2.7.9.so',
'/usr/local/grass79/lib/libgrass_btree2.so',
'/usr/local/grass79/lib/libgrass_cairodriver.7.9.so',
'/usr/local/grass79/lib/libgrass_cairodriver.so',
'/usr/local/grass79/lib/libgrass_calc.7.9.so',
'/usr/local/grass79/lib/libgrass_calc.so',
'/usr/local/grass79/lib/libgrass_cluster.7.9.so',
'/usr/local/grass79/lib/libgrass_cluster.so',
'/usr/local/grass79/lib/libgrass_dbmibase.7.9.so',
'/usr/local/grass79/lib/libgrass_dbmibase.so',
'/usr/local/grass79/lib/libgrass_dbmiclient.7.9.so',
'/usr/local/grass79/lib/libgrass_dbmiclient.so',
'/usr/local/grass79/lib/libgrass_dbmidriver.7.9.so',
'/usr/local/grass79/lib/libgrass_dbmidriver.so',
'/usr/local/grass79/lib/libgrass_dbstubs.7.9.so',
'/usr/local/grass79/lib/libgrass_dbstubs.so',
'/usr/local/grass79/lib/libgrass_dig2.7.9.so',
'/usr/local/grass79/lib/libgrass_dig2.so',
'/usr/local/grass79/lib/libgrass_display.7.9.so',
'/usr/local/grass79/lib/libgrass_display.so',
'/usr/local/grass79/lib/libgrass_driver.7.9.so',
'/usr/local/grass79/lib/libgrass_driver.so',
'/usr/local/grass79/lib/libgrass_dspf.7.9.so',
'/usr/local/grass79/lib/libgrass_dspf.so',
'/usr/local/grass79/lib/libgrass_g3d.7.9.so',
'/usr/local/grass79/lib/libgrass_g3d.so',
'/usr/local/grass79/lib/libgrass_gis.7.9.so',
'/usr/local/grass79/lib/libgrass_gis.so',
'/usr/local/grass79/lib/libgrass_gmath.7.9.so',
'/usr/local/grass79/lib/libgrass_gmath.so',
'/usr/local/grass79/lib/libgrass_gpde.7.9.so',
'/usr/local/grass79/lib/libgrass_gpde.so',
'/usr/local/grass79/lib/libgrass_gproj.7.9.so',
'/usr/local/grass79/lib/libgrass_gproj.so',
'/usr/local/grass79/lib/libgrass_htmldriver.7.9.so',
'/usr/local/grass79/lib/libgrass_htmldriver.so',
'/usr/local/grass79/lib/libgrass_imagery.7.9.so',
'/usr/local/grass79/lib/libgrass_imagery.so',
'/usr/local/grass79/lib/libgrass_interpfl.7.9.so',
'/usr/local/grass79/lib/libgrass_interpfl.so',
'/usr/local/grass79/lib/libgrass_iortho.7.9.so',
'/usr/local/grass79/lib/libgrass_iortho.so',
'/usr/local/grass79/lib/libgrass_lidar.7.9.so',
'/usr/local/grass79/lib/libgrass_lidar.so',
'/usr/local/grass79/lib/libgrass_lrs.7.9.so',
'/usr/local/grass79/lib/libgrass_lrs.so',
'/usr/local/grass79/lib/libgrass_manage.7.9.so',
'/usr/local/grass79/lib/libgrass_manage.so',
'/usr/local/grass79/lib/libgrass_neta.7.9.so',
'/usr/local/grass79/lib/libgrass_neta.so',
'/usr/local/grass79/lib/libgrass_pngdriver.7.9.so',
'/usr/local/grass79/lib/libgrass_pngdriver.so',
'/usr/local/grass79/lib/libgrass_psdriver.7.9.so',
'/usr/local/grass79/lib/libgrass_psdriver.so',
'/usr/local/grass79/lib/libgrass_raster.7.9.so',
'/usr/local/grass79/lib/libgrass_raster.so',
'/usr/local/grass79/lib/libgrass_rli.7.9.so',
'/usr/local/grass79/lib/libgrass_rli.so',
'/usr/local/grass79/lib/libgrass_rowio.7.9.so',
'/usr/local/grass79/lib/libgrass_rowio.so',
'/usr/local/grass79/lib/libgrass_rtree.7.9.so',
'/usr/local/grass79/lib/libgrass_rtree.so',
'/usr/local/grass79/lib/libgrass_segment.7.9.so',
'/usr/local/grass79/lib/libgrass_segment.so',
'/usr/local/grass79/lib/libgrass_sim.7.9.so',
'/usr/local/grass79/lib/libgrass_sim.so',
'/usr/local/grass79/lib/libgrass_stats.7.9.so',
'/usr/local/grass79/lib/libgrass_stats.so',
'/usr/local/grass79/lib/libgrass_symb.7.9.so',
'/usr/local/grass79/lib/libgrass_symb.so',
'/usr/local/grass79/lib/libgrass_temporal.7.9.so',
'/usr/local/grass79/lib/libgrass_temporal.so',
'/usr/local/grass79/lib/libgrass_vector.7.9.so',
'/usr/local/grass79/lib/libgrass_vector.so',
'/usr/local/grass79/lib/libgrass_vedit.7.9.so',
'/usr/local/grass79/lib/libgrass_vedit.so']!
    Loading libraries from /usr/local/grass79/lib
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py
egg_info Check the logs for full command output.
The command '/bin/sh -c pip3 install --upgrade pip six grass-session'
returned a non-zero code: 1

Do you have an idea on why python fail loading the grass libs with ctypes?
The error is:

OSError: Error loading shared library libgrass_gis.7.9.so: No such
file or directory (needed by
/usr/local/grass/lib/libgrass_arraystats.7.9.so)

For every lib listed above.

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<https://github.com/zarch/grass-session/issues/16#issuecomment-613918385>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAJ4GRC5WGJXT6SVST45VUTRMV22ZANCNFSM4MH7OGKA>
.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/grass-dev/attachments/20200415/ba60bcee/attachment.html>


More information about the grass-dev mailing list