阿里龙蜥centos8.4 postgis 源码安装

本文详细介绍了在Linux环境下,如何从源代码编译安装PostGIS以及其依赖的GEOS、Proj、GDAL、LibXML2和JSON-C库。首先,需要安装必要的开发工具和库,然后依次编译和安装每个依赖项,最后编译并安装PostGIS。安装过程中涉及到了环境变量的配置和初始化数据库的步骤。
摘要由CSDN通过智能技术生成

官网说明 Source Downloads | PostGIS

Compiling Source
For platform specific compilation instructions refer to Compile and Install for various Operating Systems.

To build from source, you will need a complete installation of PostgreSQL, either built and installed from source itself, or including the development headers and utilities. For Linux users, that means installing the or packages as well as the base packages.postgresql-develpostgresql-dev

You will also need to install and/or build GEOS, Proj, GDAL, LibXML2 and JSON-C.

 各依赖之间版本选择 UsersWikiPostgreSQLPostGIS – PostGIS (osgeo.org)

说是要依赖这几个GEOS, Proj, GDAL, LibXML2 and JSON-C。下面是我安装的源码包 LibXML2这个好像有了直接升级的。

 源码包

链接: 百度网盘 请输入提取码 提取码: m8gm

sqlite-autoconf-3410200.tar.gz

libtiff-v4.5.0.zip

proj-8.2.0.zip

geos-3.11.2.tar.bz2

json-c-json-c-0.16.zip

postgresql-14.7.tar.gz

gdal-3.4.3.tar.gz

postgis-3.2.4.tar.gz

1 proj安装(依赖sqlite-3,tiff-v4)

yum install -y gcc gcc-c++ cmake unzip vim curl libcurl-devel.x86_64

yum install -y openssl-devel libxml2-devel libxslt-devel readline-devel.x86_64

1.1 sqlite-3

tar -zxvf sqlite-autoconf-3410200.tar.gz

cd sqlite-autoconf-3410200

mkdir /usr/local/sqlite-3

./configure --prefix=/usr/local/sqlite-3

make && make install

环境变量添加

SQLITE3_HOME=/usr/local/sqlite-3
PATH=$PATH:$SQLITE3_HOME/bin
export LD_LIBRARY_PATH=$SQLITE3_HOME/lib
export PKG_CONFIG_PATH=$SQLITE3_HOME/lib/pkgconfig

1.2 tiff-v4

unzip libtiff-v4.5.0.zip

cd libtiff-v4.5.0

mkdir /usr/local/tiff-v4

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/tiff-v4 ../libtiff-v4.5.0

make && make install

环境变量添加

TIFF_HOME=/usr/local/tiff-v4
PATH=$PATH:$SQLITE3_HOME/bin:$TIFF_HOME/bin
export LD_LIBRARY_PATH=$SQLITE3_HOME/lib:$TIFF_HOME/lib64
export PKG_CONFIG_PATH=$SQLITE3_HOME/lib/pkgconfig:$TIFF_HOME/lib64/pkgconfig

1.3 proj

unzip proj-8.2.0.zip

cd proj-8.2.0

mkdir /usr/local/proj-8.2

./configure --prefix=/usr/local/proj-8.2

make && make install

环境变量添加

PROJ_HOME=/usr/local/proj-8.2
PATH=$PATH:$SQLITE3_HOME/bin:$TIFF_HOME/bin:$PROJ_HOME/bin
export LD_LIBRARY_PATH=$SQLITE3_HOME/lib:$TIFF_HOME/lib64:$PROJ_HOME/lib
export PKG_CONFIG_PATH=$SQLITE3_HOME/lib/pkgconfig:$TIFF_HOME/lib64/pkgconfig:$PROJ_HOME/lib/pkgconfig

2 geos安装

tar xvfj geos-3.11.2.tar.bz2

cd geos-3.11.2

mkdir /usr/local/geos-3.11

./configure --prefix=/usr/local/geos-3.11

make && make install

环境变量添加

GEOS_HOME=/usr/local/geos-3.11
PATH=$PATH:$SQLITE3_HOME/bin:$TIFF_HOME/bin:$PROJ_HOME/bin:$GEOS_HOME/bin
export LD_LIBRARY_PATH=$SQLITE3_HOME/lib:$TIFF_HOME/lib64:$PROJ_HOME/lib:$GEOS_HOME/lib64
export PKG_CONFIG_PATH=$SQLITE3_HOME/lib/pkgconfig:$TIFF_HOME/lib64/pkgconfig:$PROJ_HOME/lib/pkgconfig:$GEOS_HOME/lib64/pkgconfig

3 json-c安装

unzip json-c-json-c-0.16.zip

cd json-c-json-c-0.16

mkdir /usr/local/json-c-0.16

mkdir build

cd build

sh ../cmake-configure --prefix=/usr/local/json-c-0.16

make && make install

环境变量添加

JSONC_HOME=/usr/local/json-c-0.16
export LD_LIBRARY_PATH=$SQLITE3_HOME/lib:$TIFF_HOME/lib64:$PROJ_HOME/lib:$GEOS_HOME/lib64:$JSONC_HOME/lib64
export PKG_CONFIG_PATH=$SQLITE3_HOME/lib/pkgconfig:$TIFF_HOME/lib64/pkgconfig:$PROJ_HOME/lib/pkgconfig:$GEOS_HOME/lib64/pkgconfig:$JSONC_HOME/lib64/pkgconfig

4 pgsql安装

tar -zxvf postgresql-14.7.tar.gz

cd postgresql-14.7

mkdir /usr/local/pgsql-14.7

./configure --prefix=/usr/local/pgsql-14.7 --with-openssl

make && make install

环境变量添加

PGSQL_HOME=/usr/local/pgsql-14.7
PATH=$PATH:$SQLITE3_HOME/bin:$TIFF_HOME/bin:$PROJ_HOME/bin:$GEOS_HOME/bin:$PGSQL_HOME/bin
export LD_LIBRARY_PATH=$SQLITE3_HOME/lib:$TIFF_HOME/lib64:$PROJ_HOME/lib:$GEOS_HOME/lib64:$JSONC_HOME/lib64:$PGSQL_HOME/lib
export PKG_CONFIG_PATH=$SQLITE3_HOME/lib/pkgconfig:$TIFF_HOME/lib64/pkgconfig:$PROJ_HOME/lib/pkgconfig:$GEOS_HOME/lib64/pkgconfig:$JSONC_HOME/lib64/pkgconfig:$PGSQL_HOME/lib/pkgconfig

5 gdal安装

tar -zxvf gdal-3.4.3.tar.gz

cd gdal-3.4.3

mkdir /usr/local/gdal-3.4

./configure --prefix=/usr/local/gdal-3.4 --with-libtiff=yes --with-sqlite3=/usr/local/sqlite-3 --with-proj=/usr/local/proj-8.2 --with-pg=yes --with-geos=yes

make && make install

环境变量添加

GDAL_HOME=/usr/local/gdal-3.4
PATH=$PATH:$SQLITE3_HOME/bin:$TIFF_HOME/bin:$PROJ_HOME/bin:$GEOS_HOME/bin:$PGSQL_HOME/bin:$GDAL_HOME/bin
export LD_LIBRARY_PATH=$SQLITE3_HOME/lib:$TIFF_HOME/lib64:$PROJ_HOME/lib:$GEOS_HOME/lib64:$JSONC_HOME/lib64:$PGSQL_HOME/lib:$GDAL_HOME/lib
export PKG_CONFIG_PATH=$SQLITE3_HOME/lib/pkgconfig:$TIFF_HOME/lib64/pkgconfig:$PROJ_HOME/lib/pkgconfig:$GEOS_HOME/lib64/pkgconfig:$JSONC_HOME/lib64/pkgconfig:$PGSQL_HOME/lib/pkgconfig:$GDAL_HOME/lib/pkgconfig

6 postgis安装

tar -zxvf postgis-3.2.4.tar.gz

cd postgis-3.2.4

mkdir /usr/local/postgis-3.2

// protobuf 懒得装了

./configure --prefix=/usr/local/postgis-3.2 --without-protobuf

make && make install

启动

添加用户

groupadd postgres

useradd -g postgres -d /home/postgres postgres

mkdir -p /data/postgres

chown -R postgres:postgres /data/postgres/

切换用户

su postgres

initdb -D /data/postgres

pg_ctl -D /data/postgres -l /data/postgres/pg.log start

psql

create database test;

\c test

CREATE EXTENSION postgis;

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值