Could not find library geos_c or load any of its variants

前端 未结 8 1422
爱一瞬间的悲伤
爱一瞬间的悲伤 2020-12-01 07:31

I use python in fedora 19. I wanted to run the following line Python: import shapely.geometry the following error appears:

OSError: C

相关标签:
8条回答
  • 2020-12-01 07:35

    set the LD_LIBRARY_PATH, then run python

    export LD_LIBRARY_PATH=/path_to/geos/lib:$LD_LIBRARY_PATH
    
    python mytest.py
    
    0 讨论(0)
  • 2020-12-01 07:37

    Shapely loads geos via ctypes.

    Try this in your python and see if you get anything:

    from ctypes.util import find_library
    find_library('geos_c')
    

    If it doesn't work, then your geos installation is probably messed up. According to this, your geos should be in /usr/lib/libgeos_c.so.1. Is your library actually there?

    0 讨论(0)
  • 2020-12-01 07:37

    I had no problem on Jupyter Notebook but when I used PyCharm I encountered this issue. Tried multiple things windows on machine and the below troubleshooting steps fixed the issue

    pip install geos
    

    Go to PyCharm, File->Settings->Project->Project Interpreter(Check you have the right path where your python.exe file is there)->Add

    Check that, on Virtualenv Environment -> Base Interpreter pointing to the right location where you have the python.exe

    Same for System Interpreter->Interpreter And also Pipenv Environment -> Base Interpreter

    Make sure all are pointing to the right path. I encountered this problem as I have multiple IDE and hence multiple directories where python.exe is available.They were pointing to incorrect directories.

    During the troubleshooting I also uninstalled and re installed conda install shapelyas I am pointing to Anaconda directory from PyCharm. Hope it helps.

    Below link is also helpful https://www.jetbrains.com/help/pycharm/installing-uninstalling-and-upgrading-packages.html#conda-package-manager

    0 讨论(0)
  • 2020-12-01 07:39

    On Fedora install geos and geos-devel

    sudo yum install geos geos-devel
    
    0 讨论(0)
  • 2020-12-01 07:41

    If you're using Anaconda like I am and ran into this, copy the libgeos* files from /usr/lib to the anaconda/lib directory and try again... :) Hopefully this saves someone else, cause I have spent hours on this.

    0 讨论(0)
  • 2020-12-01 07:43

    I had the same problem, and to solve it, you need to add the lib path to ld.so.conf file.

    To do this, Open the file:

    sudo vi /etc/ld.so.conf
    

    add this line

    /usr/local/lib
    

    And then

    sudo /sbin/ldconfig
    
    0 讨论(0)
提交回复
热议问题