问题描述
我在我的 Amazon Linux 2 机器上安装了带有 geos-3.9.1 和 postgis-3.1.1 的 Postgres-XL 10。我的集群正在运行并且工作正常,但是我在将 postgis 安装到数据库中时遇到了麻烦。我已经从源代码构建并安装了所有内容。
运行 CREATE EXTENSION postgis;
时遇到的错误是:
ERROR: Could not load library "/usr/local/pgsql/lib/postgis-3.so": libgeos_c.so.1: cannot open shared object file: No such file or directory
使用在线其他帖子的解决方案,我尝试过:
- 运行
sudo ldconfig
- 在安装 geos 和 postgis 时使用
--enable-shared
选项 - 确保
/usr/local/lib
在LD_LIBRARY_PATH
环境变量中,我还将/usr/local/pgsql/lib
添加到LD_LIBRARY_PATH
这些解决方案都没有奏效。我无法使用 yum 安装 PostGIS 或 Geos,因为它会安装 postgresql 12,这与我的 postgresql 版本冲突,后者是 Postgres-XL 的自定义版本。
谢谢。
解决方法
您似乎需要降级。 Postgres-XL 目前仅支持 2.0.x 版本的 postgis。至少根据他们的文档。
https://www.postgres-xl.org/faq/
Q. Is PostGIS supported?
Yes,PostGIS can be added to Postgres-XL. It has been tested with PostGIS 2.0.