错误:请安装PostgreSQL服务器开发包并重新运行configure

Posted

技术标签:

【中文标题】错误:请安装PostgreSQL服务器开发包并重新运行configure【英文标题】:error: Please install the PostgreSQL server development packages and re-run configure 【发布时间】:2014-11-25 22:01:02 【问题描述】:

我正在尝试在我的 ubuntu 系统上为 django 框架安装 Postgis。但是每次我运行命令 ./configure 时都会出现错误

 error: the PGXS Makefile /usr/lib/postgresql/9.3/lib/pgxs/src/makefiles/pgxs.mk cannot be found. Please install the PostgreSQL server development packages and re-run configure.

我已经在我的系统上安装了 postgres 并且还创建了用户。但我无法在我的系统上安装 Postgis。我已经浏览了我在 Internet 上找到的许多说明,但未能安装它。

请告诉我这个错误的解决方案,以便我可以在 ubuntu 上安装 Postgis。 帮助将不胜感激

【问题讨论】:

供将来参考,这确实更适合 superuser.com 或 serverfault.com 而不是 ***.com;查看导览和常见问题解答。 你为什么要从头开始构建 postgis?试试apt repository。 好的@Craig Ringer,我会在你提到的网站上进一步提问。谢谢 @BurhanKhalid 同意,应该只是apt-get install postgis2_93。见postgis.net/install 【参考方案1】:

假设您正在使用来自 http://apt.postgresql.org/ 的 PostgreSQL:

apt-get install postgresql-server-dev-9.3

正如@BurhanKhalid 指出的那样,您应该只是从包中安装 PostGIS,而不是从源代码,as the PostGIS web page explains:

apt-get install postgis2_93

【讨论】:

是的,它解决了该错误,但现在我收到另一个错误,即 django.core.exceptions.ImproperlyConfigured: Cannot determine PostGIS version for database "mentorhip62". GeoDjango requires at least PostGIS version 1.3. Was the database created from a spatial database template? 。我按照 django 中的描述从空间模板创建了数据库。 @SajidAhmad 在现代 PostGIS 版本中,您通常使用 CREATE EXTENSION postgis; 代替。但无论如何,这是一个单独的问题。如果您在研究了一段时间后仍然卡住,请发布一个新问题并链接回该问题以获取上下文。 @SajidAhmad 另外,请参阅更新。你应该像 PostGIS 网站所说的那样从包中安装 PostGIS。【参考方案2】:

安装postgreSql

sudo apt-get install postgresql postgresql-contrib

安装 Postgis。

sudo add-apt-repository ppa:gwibber-daily/ppa
sudo apt-get update
sudo apt-get install postgresql-9.3-postgis-2.1
sudo apt-get install postgresql-server-dev-9.3

在 Postgresql 中创建数据库

createuser -U postgres username -S -D -R
psql -U postgres -c "alter role username with password 'passhere';"
createdb -U postgres -T template_postgis -O username dbname

如果你在 postgresql 中没有 template_postgis 那么 切换到用户 postgres 并运行

sudo su postgres
createdb template_postgis
createlang plpgsql template_postgis

现在用于创建扩展

psql -d dbname -c "CREATE EXTENSION postgis;"
psql -d dbname -c "CREATE EXTENSION postgis_topology;"

【讨论】:

你不再需要template_postgis,它只是扩展存在之前的遗物。现在,您不妨在需要 PostGIS 的每个数据库中只使用 CREATE EXTENSION【参考方案3】:

对于 PostgreSQL 11,您需要安装 postgresql-11-postgis-2.5postgresql-11-postgis-2.5-scripts,如 here 所述。

sudo apt install postgresql-11-postgis-2.5
sudo apt install postgresql-11-postgis-2.5-scripts

【讨论】:

【参考方案4】:

只需使用此命令:

sudo apt install postgis

【讨论】:

以上是关于错误:请安装PostgreSQL服务器开发包并重新运行configure的主要内容,如果未能解决你的问题,请参考以下文章

Adobe Photoshop CC 打开时报错~配置错误:请卸载并重新安装该产品

PostgreSQL 安装错误

重新postgresql出现错误:Problem running post-install step. Installation may not complete correctly. The dat

使用“gem pq”安装 PostgreSQL gem 失败并出现错误:无法构建 gem 本机扩展

Apache Ambari 过时 PID 错误

如何在 ubuntu 上彻底清除并重新安装 postgresql? [关闭]