问题
I use python in fedora 19. I wanted to run the following line Python: import shapely.geometry the following error appears:
OSError: Could not find or load any library geos_c icts of variants ['libgeos_c.so.1', 'libgeos_c.so']
I installed the package Shapely, and the following two libraries:
glibc-2.17-4.fc19.i686.rpm
geos-3.3.8-2.fc19.i686.rpm
I just looked for the solution of this problem on the web, but I have not found
Please, help me !
回答1:
Installed shapely using pip, and had the same problem. So I went ahead and installed it like so:
sudo apt-get install libgeos-dev
And it worked. I'm running Ubuntu, so if you're on Fedora, you should run:
sudo yum install geos-devel
回答2:
set the LD_LIBRARY_PATH
, then run python
export LD_LIBRARY_PATH=/path_to/geos/lib:$LD_LIBRARY_PATH
python mytest.py
回答3:
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?
回答4:
On Fedora install geos and geos-devel
sudo yum install geos geos-devel
回答5:
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.
回答6:
In ubuntu, the following commands should take care of it. It all goes down to the following packages.
sudo apt-get install libgeos-c1 libgeos-3.4.2
回答7:
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 shapely
as 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
回答8:
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
来源:https://stackoverflow.com/questions/19742406/could-not-find-library-geos-c-or-load-any-of-its-variants