debian 12安装postgis3.6

环境:debian 12\宝塔\postgresql管理器安装了postgresql version 18.0;

需求:需要安装postGIS 3.6; 但是debian 12自带的GEOS版本太低了,需要安装geos 3.14这个版本;

要构建和使用 PostGIS,您需要:

不可缺少

  • PostgreSQL 12 - 18. 需要完整安装 PostgreSQL(包括服务器头文件)。可从 https://www.postgresql.org获取18。

    请参阅 https://trac.osgeo.org/postgis/wiki/UsersWikiPostgreSQLPostGIS 中完整的 PostgreSQL/PostGIS 和 PostGIS/GEOS 支持表

  • GNU C 编译器 (gcc)。其他一些 ANSI C 编译器也可以用来编译PostGIS,但使用gcc编译时我们发现问题要少得多。

  • GNU Make(gmake or make)。对于许多系统,GNU make是 make 的默认版本。通过调用make -v检查版本。 其他版本的make可能无法正确处理 PostGIS Makefile

  • Proj投影转换库 。需要 Proj 6.1 及以上版本。Proj 库用于 PostGIS 中提供坐标重投影支持。Proj 可以从https://proj.org/下载。

  • GEOS 几何库,版本需为 3.8.0 或更高,但建议使用 GEOS 3.14 及以上版本,以充分利用所有新函数和特性。可从 https://libgeos.org下载。

  • LibXML2、2.5.x 或更高版本。 目前,导入函数(ST_GeomFromGML和ST_GeomFromKML)使用 LibXML2。 您可以从 https://gitlab.gnome.org/GNOME/libxml2/-/releases 下载 LibXML2。

  • JSON-C 0.9或更高版本。JSON-C 目前用于按 ST_GeomFromGeoJson 导入 GeoJSON。 JSON-C 可从 https://github.com/json-c/json-c/releases/ 下载。

  • 推荐使用 GDAL 3 以上版本。此版本对于栅格功能是必需的。更多信息请参阅https://gdal.org/download.html

  • 要使用PostgreSQL+JIT进行编译,需要LLVM版本6或更高版本。请参阅 https://trac.osgeo.org/postgis/ticket/4125

    卸载旧版本的 GEOS
    sudo apt-get remove --purge libgeos-dev libgeos-c1v5
    您可以从官方GEOS网站下载最新版本的源代码:解压下载的文件并进入解压后的目录:
    wget https://download.osgeo.org/geos/geos-3.14.0.tar.bz2
    tar -xvjf geos-3.14.0.tar.bz2
    cd geos-3.14.0
    安装GEOS编译所需的依赖项:
    sudo apt-get update
    sudo apt-get install build-essential libtool pkg-config
    sudo apt-get install libproj-dev
    sudo apt-get install libxml2-dev
    执行以下命令进行编译和安装:
    ./configure
    make
    sudo make install
    如果在安装后无法找到新的库文件,请执行以下命令更新库链接:
    sudo ldconfig

    在编译 PostGIS 之前,Debian 12 用户必须安装所有依赖:
    sudo apt update

    sudo apt install -y
    build-essential
    libxml2-dev
    libjson-c-dev
    libpq-dev
    libgdal-dev
    gdal-bin
    libgeos-dev
    libproj-dev
    proj-bin
    protobuf-c-compiler
    libprotobuf-c-dev
    libpcre2-dev
    libxslt1-dev
    flex bison pkg-config

    下载postgis,解压安装,并指向postgis-3.6.0;

    cd /usr/local/src
    wget https://download.osgeo.org/postgis/source/postgis-3.6.0.tar.gz
    tar -xvf postgis-3.6.0.tar.gz
    cd postgis-3.6.0

    清除之前的编译文件
    make clean
    重新执行配置和安装命令:
    ./configure --with-pgconfig=/www/server/pgsql/bin/pg_config --with-gdalconfig=/usr/local/bin/gdal-config
    安装postgis:
    make -j$(nproc)
    sudo make install
    要启用 PostGIS 扩展,首先需要选择一个数据库。如果你已经有数据库,使用以下命令创建 PostGIS 扩展:
    CREATE EXTENSION postgis;
    安装完成后,你可以运行以下 SQL 查询来验证 PostGIS 扩展是否成功安装:
    SELECT postgis_full_version();

相关推荐
欧云服务器3 天前
怎么让脚本命令可以同时在centos、debian、ubuntu执行?
ubuntu·centos·debian
~远在太平洋~3 天前
Debian系统如何删除多余的kernel
linux·网络·debian
~远在太平洋~3 天前
debian系统已安装python3.12却无法执行python命令
chrome·python·debian
木子欢儿6 天前
在 Debian 13(以及 12)上安装和配置 tightvncserver 并让普通用户使
运维·前端·debian
l1t13 天前
在debian 13.1容器中安装使用redrock postgresql
运维·postgresql·debian
木子欢儿14 天前
debian 13 安装配置ftp 创建用户admin可以访问 /mnt/Data/
linux·运维·服务器·数据库·debian
地球空间-技术小鱼14 天前
搜罗Linux桌面环境(Desktop Environments)列表
linux·运维·服务器·笔记·学习·ubuntu·debian
木子欢儿15 天前
Debian挂载飞牛OS创建的RAID分区和Btrfs分区指南
运维·debian
市安16 天前
基于Debain构建Ngxin镜像
运维·nginx·docker·云原生·容器·debian·镜像
henry10101016 天前
Debian/Ubuntu EC2实例上一键部署WireGuard
ubuntu·云计算·debian·aws