尝试在 Ubuntu 14.04(Trusty Tahr) 上安装 postgres-9.4-postgis-2.1 时出现以下错误:
Depends: libgdal1 (>= 1.9.0) but it is not installable
我也尝试通过 synaptic 安装该软件包,但没有成功。我已经安装了 libgdal1-1.10.1-grass 和 libgdal1h,但错误仍然存在。
虽然一个可能的解决方案可能是从 saucy repo 安装 libgdal1 而不是从 trusty 下载它,但我应该怎么做才能从 saucy repo 下载它?
另外请告诉我是否还有其他可能的解决方案。谢谢!
答案1
你应该gdal
从ubuntugis-不稳定 PPA:
sudo add-apt-repository ppa:ubuntugis/ubuntugis-unstable
sudo apt-get update
sudo apt-get install postgres-9.4-postgis-2.1
答案2
这帮我解决了问题。我需要更新 /etc/apt/sources.list.save 和 /etc/apt/sources.list.d/postgresql.list
deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main
到
deb http://apt.postgresql.org/pub/repos/apt/ trusty-pgdg main
答案3
这个人似乎已经能够使用你的精确设置(trusty & 9.4-2.1)创建一个docker镜像: https://hub.docker.com/r/kartoza/postgis/
从评论来看,他/她也遇到了 libgdal1/libgdal1h 问题,并且似乎已经解决了它:
https://github.com/kartoza/docker-postgis/blob/9.4-2.1/Dockerfile
也许您可以通过docker安装或按照docker文件中的确切步骤进行操作? 如果您成功完成这些步骤,我将在此处更新我的答案。
答案4
gdal
如果从源代码构建,则可以使用该选项避免依赖--without-raster
。
这意味着您不能使用“CREATE EXTENSION postgis;”快捷方式。更多信息
我列出的先决条件:
apt-get install libgeos-3.4.2 libgeos-dev libxml2-dev
wget http://download.osgeo.org/proj/proj-4.9.2.tar.gz
tar xfvz proj-4.9.2.tar.gz
cd proj-4.9.2
./configure
make && make install
Postgis:
wget http://download.osgeo.org/postgis/source/postgis-2.1.8.tar.gz
tar xfvz postgis-2.1.8.tar.gz
cd postgis-2.1.8
./configure --with-pgconfig=/usr/lib/postgresql/9.4/bin/pg_config --without-raster
make && make install
现在我遇到一个问题,即 postgis 库看不到 proj 库,从执行时出现的“未找到”可以看出,ldd /usr/lib/postgresql/9.4/lib/postgis-2.1.so
解决方案是软链接它:
ln /usr/local/lib/libproj.so.9.1.0 /usr/lib/libproj.so.9
然后,您必须对您的数据库(以及可能的其他数据库;请参阅上面的安装步骤链接)执行“postgis.sql”
psql -d yourdatabase -f /usr/share/postgresql/9.4/contrib/postgis-2.1/postgis.sql