Could not find library geos_c or load any of its variants

末鹿安然 提交于 2019-11-27 20:21:46
PaF

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

set the LD_LIBRARY_PATH, then run python

export LD_LIBRARY_PATH=/path_to/geos/lib:$LD_LIBRARY_PATH

python mytest.py

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?

On Fedora install geos and geos-devel

sudo yum install geos geos-devel

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.

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

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
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!