1.前提条件:

postgresql 9.6.1 已经通过源码方式安装完成并可成功运行。

2. other OS packets

OS: CentOS 6.4 X64

X64: libxml2-devel

3.geos-3.6.0

http://download.osgeo.org/geos/geos-3.6.0.tar.bz2

# tar xjvf geos-3.6.0.tar.bz2

./configure

......

......

......

config.status: executing libtool commands

Swig: false

Python bindings: false

Ruby bindings: false

# make

......

......

make[3]: Leaving directory `/home/soft/geos-3.6.0/tests/geostest‘

Making all in thread

make[3]: Entering directory `1118.www.qixoo.qixoo.com/home/soft/geos-3.6.0/tests/thread‘

make[3]: Nothing to be done for `all‘.

make[3]: Leaving directory `/home/soft/geos-3.6.0/tests/thread‘

make[3]: Entering directory `qkxue.net/home/soft/geos-3.6.0/tests‘

make[3]: Nothing to be done for `all-am‘.

make[3]: Leaving directory `/home/soft/geos-3.6.0/tests‘

make[2]: Leaving directory `/home/soft/geos-3.6.0/tests‘

Making all in tools

make[2]: Entering directory `/home/soft/geos-3.6.0/tools‘

make[2]: Nothing to be done for `all‘.

make[2]: Leaving directory `/home/soft/geos-3.6.0/tools‘

make[2]: Entering directory `/home/soft/geos-3.6.0‘

make[2]: Nothing to be done for `all-am‘.

make[2]: Leaving directory `/home/soft/geos-3.6.0‘

make[1]: Leaving directory `/home/soft/geos-3.6.0‘

# make install

......

......

Making install in tools

make[2]: Entering directory `/home/soft/geos-3.6.0/tools‘

make[3]: Entering directory `/home/soft/geos-3.6.0/tools‘

/bin/mkdir -p ‘/usr/local/bin‘

/usr/bin/install -c geos-config ‘/usr/local/bin‘

make[3]: Nothing to be done for `install-data-am‘.

make[3]: Leaving directory `/home/soft/geos-3.6.0/tools‘

make[2]: Leaving directory `/home/soft/geos-3.6.0/tools‘

make[2]: Entering directory `/home/soft/geos-3.6.0‘

make[3]: Entering directory `/home/soft/geos-3.6.0‘

make[3]: Nothing to be done for `install-exec-am‘.

make[3]: Nothing to be done for `install-data-am‘.

make[3]: Leaving directory `/home/soft/geos-3.6.0‘

make[2]: Leaving directory `/home/soft/geos-3.6.0‘

make[1]: Leaving directory `/home/soft/geos-3.6.0‘

#

4.proj4

http://download.osgeo.org/proj/proj-4.9.3.tar.gz

# tar zxvf proj-4.9.3.tar.gz

# cd proj-4.9.3

# ./configure

# make

......

......

make[2]: Leaving directory `/home/soft/proj-4.9.3/jniwrap‘

make[1]: Leaving directory `/home/soft/proj-4.9.3/jniwrap‘

Making all in cmake

make[1]: Entering directory `/home/soft/proj-4.9.3/cmake‘

make[1]: Nothing to be done for `all‘.

make[1]: Leaving directory `/home/soft/proj-4.9.3/cmake‘

make[1]: Entering directory `/home/soft/proj-4.9.3‘

make[1]: Nothing to be done for `all-am‘.

make[1]: Leaving directory `/home/soft/proj-4.9.3‘

#

# make install

......

......

make[2]: Nothing to be done for `install-exec-am‘.

/bin/mkdir -p ‘/usr/local/lib/pkgconfig‘

/usr/bin/install -c -m 644 proj.pc ‘/usr/local/lib/pkgconfig‘

make[2]: Leaving directory `/home/soft/proj-4.9.3‘

make[1]: Leaving directory `/home/soft/proj-4.9.3‘

#

5.gdal

http://download.osgeo.org/gdal/2.1.2/gdal-2.1.2.tar.gz

export LD_LIBRARY_PATH=/opt/pgsql/9.6.1/lib

export PATH=/opt/pgsql/9.6.1/bin:$PATH

export MANPATH=/opt/pgsql/9.6.1/share/man:$MANPATH

# ./configure

......

......

GDAL is now configured for x86_64-pc-linux-gnu

Installation directory: /usr/local

C compiler: gcc -g -O2

C++ compiler: g++ -g -O2

LIBTOOL support: yes

LIBZ support: external

LIBLZMA support: no

cryptopp support: no

GRASS support: no

CFITSIO support: no

PCRaster support: internal

LIBPNG support: internal

DDS support: no

GTA support: no

LIBTIFF support: internal (BigTIFF=yes)

LIBGEOTIFF support: internal

LIBJPEG support: internal

12 bit JPEG: yes

12 bit JPEG-in-TIFF: yes

LIBGIF support: internal

OGDI support: no

HDF4 support: no

HDF5 support: no

Kea support: no

NetCDF support: no

Kakadu support: no

JasPer support: no

OpenJPEG support: no

ECW support: no

MrSID support: no

MrSID/MG4 Lidar support: no

MSG support: no

GRIB support: yes

EPSILON support: no

WebP support: no

cURL support (wms/wcs/...):no

PostgreSQL support: yes

MRF support: yes

MySQL support: no

Ingres support: no

Xerces-C support: no

NAS support: no

Expat support: no

libxml2 support: yes

Google libkml support: no

ODBC support: no

PGeo support: no

FGDB support: no

MDB support: no

PCIDSK support: internal

OCI support: no

GEORASTER support: no

SDE support: no

Rasdaman support: no

DODS support: no

SQLite support: no

PCRE support: yes

SpatiaLite support: no

DWGdirect support no

INFORMIX DataBlade support:no

GEOS support: yes

QHull support: internal

Poppler support: no

Podofo support: no

PDFium support: no

OpenCL support: no

Armadillo support: no

FreeXL support: no

SOSI support: no

MongoDB support: no

SWIG Bindings: no

Statically link PROJ.4: no

enable GNM building: no

enable pthread support: yes

enable POSIX iconv support:yes

hide internal symbols: no

# make

......

......

.so -lpq -lpthread -lrt -ldl -lpcre -lxml2 -lz -Wl,-rpath -Wl,/usr/local/lib

make[1]: Leaving directory `/home/soft/gdal-2.1.2/apps‘

rm -f gdal.pc

echo ‘CONFIG_VERSION=‘`cat ./VERSION`‘‘ >> gdal.pc

echo ‘CONFIG_INST_PREFIX=/usr/local‘ >> gdal.pc

echo ‘CONFIG_INST_LIBS=-L/usr/local/lib -lgdal‘ >> gdal.pc

echo ‘CONFIG_INST_CFLAGS=-I/usr/local/include‘ >> gdal.pc

echo ‘CONFIG_INST_DATA=/usr/local/share/gdal/data‘ >> gdal.pc

cat gdal.pc.in >> gdal.pc

# make install

......

......

make[1]: Leaving directory `/home/soft/gdal-2.1.2/scripts‘

for f in LICENSE.TXT data/*.* ; do /home/soft/gdal-2.1.2/install-sh -c -m 0644 $f /usr/local/share/gdal ; done

/bin/sh /home/soft/gdal-2.1.2/libtool --mode=finish --silent /usr/local/lib

/home/soft/gdal-2.1.2/install-sh -d /usr/local/lib/pkgconfig

/home/soft/gdal-2.1.2/install-sh -c -m 0644 gdal.pc /usr/local/lib/pkgconfig/gdal.pc

#

6.postgis

export LD_LIBRARY_PATH=/opt/pgsql/9.6.1/lib

export PATH=/opt/pgsql/9.6.1/bin:$PATH

export MANPATH=/opt/pgsql/9.6.1/share/man:$MANPATH

# tar zxvf postgis-2.3.0.tar.gz

# cd postgis-2.3.0

# ./configure

......

......

config.status: executing po-directories commands

PostGIS is now configured for x86_64-pc-linux-gnu

-------------- Compiler Info -------------

C compiler: gcc -g -O2

SQL preprocessor: /usr/bin/cpp -traditional-cpp -w -P

-------------- Dependencies --------------

GEOS config: /usr/local/bin/geos-config

GEOS version: 3.6.0

GDAL config: /usr/local/bin/gdal-config

GDAL version: 2.1.2

PostgreSQL config: /opt/pgsql/9.6.1/bin/pg_config

PostgreSQL version: PostgreSQL 9.6.1

PROJ4 version: 49

Libxml2 config: /usr/bin/xml2-config

Libxml2 version: 2.7.6

JSON-C support: no

PCRE support: yes

PostGIS debug level: 0

Perl: /usr/bin/perl

--------------- Extensions ---------------

PostGIS Raster: enabled

PostGIS Topology: enabled

SFCGAL support: disabled

Address Standardizer support: enabled

-------- Documentation Generation --------

xsltproc:

xsl style sheets:

dblatex:

convert:

mathml2.dtd: http://www.w3.org/Math/DTD/mathml2/mathml2.dtd

# make

......

......

mkdir -p sql

cat us_lex.sql us_gaz.sql us_rules.sql sql_bits/address_standardizer_data_us_mark_editable_objects.sql.in > sql/address_standardizer_data_us.sql

mkdir -p sql

cat us_lex.sql us_gaz.sql us_rules.sql sql_bits/address_standardizer_data_us_mark_editable_objects.sql.in > sql/address_standardizer_data_us--2.3.0.sql

cat sql/address_standardizer_data_us--2.3.0.sql > sql/address_standardizer_data_us--2.3.0--2.3.0next.sql

cat sql/address_standardizer_data_us--2.3.0.sql > sql/address_standardizer_data_us--2.3.0next--2.3.0.sql

mkdir -p sql

/usr/bin/cpp -traditional-cpp -w -P -I../libpgcommon test-init-extensions.sql.in | grep -v ‘^#‘ | \

/usr/bin/perl -lpe "s‘MODULE_PATHNAME‘\$libdir/address_standardizer-2.3‘g" > sql/test-init-extensions.sql

mkdir -p sql

/usr/bin/cpp -traditional-cpp -w -P -I../libpgcommon test-parseaddress.sql.in | grep -v ‘^#‘ | \

/usr/bin/perl -lpe "s‘MODULE_PATHNAME‘\$libdir/address_standardizer-2.3‘g" > sql/test-parseaddress.sql

mkdir -p sql

/usr/bin/cpp -traditional-cpp -w -P -I../libpgcommon test-standardize_address_1.sql.in | grep -v ‘^#‘ | \

/usr/bin/perl -lpe "s‘MODULE_PATHNAME‘\$libdir/address_standardizer-2.3‘g" > sql/test-standardize_address_1.sql

mkdir -p sql

/usr/bin/cpp -traditional-cpp -w -P -I../libpgcommon test-standardize_address_2.sql.in | grep -v ‘^#‘ | \

/usr/bin/perl -lpe "s‘MODULE_PATHNAME‘\$libdir/address_standardizer-2.3‘g" > sql/test-standardize_address_2.sql

make[2]: Leaving directory `/home/soft/postgis-2.3.0/extensions/address_standardizer‘

make[1]: Leaving directory `/home/soft/postgis-2.3.0/extensions‘

PostGIS was built successfully. Ready to install.

# make install

......

......

make[2]: Entering directory `/home/soft/postgis-2.3.0/extensions/address_standardizer‘

/bin/mkdir -p ‘/opt/pgsql/9.6.1/lib‘

/bin/mkdir -p ‘/opt/pgsql/9.6.1/share/extension‘

/bin/mkdir -p ‘/opt/pgsql/9.6.1/share/extension‘

/bin/mkdir -p ‘/opt/pgsql/9.6.1/share/doc/extension‘

/usr/bin/install -c -m 755 address_standardizer-2.3.so ‘/opt/pgsql/9.6.1/lib/address_standardizer-2.3.so‘

/usr/bin/install -c -m 644 .//address_standardizer.control ‘/opt/pgsql/9.6.1/share/extension/‘

/usr/bin/install -c -m 644 .//address_standardizer_data_us.control .//sql/address_standardizer.sql .//sql/address_standardizer_data_us.sql .//sql/address_standardizer--1.0--2.3.0.sql .//sql/address_standardizer--2.3.0--2.3.0next.sql .//sql/address_standardizer--2.3.0next--2.3.0.sql .//sql/address_standardizer--2.3.0.sql .//sql/address_standardizer_data_us--2.3.0--2.3.0next.sql .//sql/address_standardizer_data_us--2.3.0next--2.3.0.sql .//sql/address_standardizer_data_us--2.3.0.sql ‘/opt/pgsql/9.6.1/share/extension/‘

/usr/bin/install -c -m 644 .//README.address_standardizer ‘/opt/pgsql/9.6.1/share/doc/extension/‘

make[2]: Leaving directory `/home/soft/postgis-2.3.0/extensions/address_standardizer‘

make[1]: Leaving directory `/home/soft/postgis-2.3.0/extensions‘

#

7.创建扩展

1).进入数据库查询postgis可用扩展

postgres=# SELECT name, default_version,installed_version FROM pg_available_extensions WHERE name LIKE ‘postgis%‘ ;

name | default_version | installed_version

------------------------+-----------------+-------------------

postgis_tiger_geocoder | 2.3.0 |

postgis_topology | 2.3.0 |

postgis | 2.3.0 |

(3 rows)

postgres=#

2).添加postgres用户lib PATH

# su - postgres

$ vi .bash_profile

# .bash_profile

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

. ~/.bashrc

fi

# User specific environment and startup programs

export LD_LIBRARY_PATH=/usr/local/lib:/opt/pgsql/9.6.1/lib

export PATH=/opt/pgsql/9.6.1/bin:$PATH

export MANPATH=/opt/pgsql/9.6.1/share/man:$MANPATH

$

3).reboot系统

创建扩展

postgres=# create database realstate;

postgres=# \c realstate ;

You are now connected to database "realstate" as user "postgres".

realstate=# create extension postgis;

CREATE EXTENSION

8.验证扩展

realstate=# \dx

List of installed extensions

Name | Version | Schema | Description

---------+---------+------------+---------------------------------------------------------------------

plpgsql | 1.0 | pg_catalog | PL/pgSQL procedural language

postgis | 2.3.0 | public | PostGIS geometry, geography, and raster spatial types and functions

(2 rows)

realstate=#

Linux 平台PostGIS安装的更多相关文章

  1. Linux 平台静默安装 Oracle客户端

    需求:Linux平台,安装完整版Oracle客户端 Tips:如果只是用到sqlldr,sqlplus功能,可以参考<Linux上oracle精简版客户端快速部署>快速部署精简版:如果需要 ...

  2. 【android开发】如何在Linux平台下安装JDK环境

    原文:http://android.eoe.cn/topic/android_sdk Linux平台JDK安装 本文主要描述如何在Linux平台下安装JDK环境.进入网页:http://www.ora ...

  3. Arduino可穿戴教程Linux平台下安装Arduino IDE

    Arduino可穿戴教程Linux平台下安装Arduino IDE Linux平台下安装Arduino IDE Linux平台下的安装方式和Windows下的zip形式安装是类似的,只是Linux下的 ...

  4. 如何在Linux平台下安装JDK

    原文链接:http://android.eoe.cn/topic/android_sdk 1.下载Java的开发包JDK: JDK有好几个类型版本,我们只需要选择Java SE类型的版本就行了. 进入 ...

  5. (转载)Linux平台下安装 python 模块包

    https://blog.csdn.net/aiwangtingyun/article/details/79121145 一.安装Python Windows平台下: 进入Python官网下载页面下载 ...

  6. Linux平台下安装MySQL

    1.下载RPM包 http://dev.mysql.com/downloads/mysql/5.5.html#downloads 选择[Red Hat & Oracle Enterprise ...

  7. c语言编译器(linux平台下安装c语言环境)一

    gcc : 语言的默认编译器     (ubuntu下输入gcc,可根据终端输出查看是否安装了gcc) g++ : c++的默认编译器   (ubuntu下输入g++,可根据终端输出查看是否安装了g+ ...

  8. linux平台编译安装Poco C++

    1.到官网下载poco-1.4.6p4-all.tar.gz,地址为http://pocoproject.org/download/index.html 2.同时下载说明文档 3.根据说明文档执行安装 ...

  9. Docker 在 Linux 平台的安装 以及一些常见命令

    1,添加,清理 yum 源,查看应用列表 1.1,yum install -y epel-release 1.2,yum clean all 1.3,yum list  (可以不运行) 2,安装, 启 ...

随机推荐

  1. 构造函数的return返回值

    3 1. 2. 3.

  2. hiho一下 第六十四周 Right-click Context Menu

    题目链接:hihocoder 第64周 题意概述: 上下文菜单是panel(面板)包括很多section(分区),一个分区里面至少包含一个菜单项.每一个菜单项都对应有一个子panel,这个panel可 ...

  3. 安装rpm包时遇到Header V3 DSA signature: NOKEY时解决办法

    安装rpm包,特别是没有GPGkey校验,原因是rpm版本过低导致的. 代码如下: warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY ...

  4. __getattr__与__getattribute__

    class Foo: def __init__(self,x): self.x=x def __getattr__(self, item): print("执行的是我----->&qu ...

  5. iOS不得姐项目--图片帖子模块,大图默认显示最顶部分的处理

    一.刚开始的处理,设置Mode属性(self.pictureImageView.contentMode = UIViewContentModeScaleAspectFill;) 和 Clip Subv ...

  6. ActiveMQ(七)_伪集群和主从高可用使用

      一.本文目的         介绍如何在同一台虚拟机上搭建高可用的Activemq服务,集群数量包含3个Activemq,当Activemq可用数>=2时,整个集群可用.         本 ...

  7. noip复习模板

    我只会这么多 tarjan:codevs 1332 void tarjan(int u) { dfn[u]=low[u]=Time++; s.push(u); for(int i=head[u];~i ...

  8. 【HDU 5698】瞬间移动(组合数,逆元)

    x和y分开考虑,在(1,1)到(n,m)之间可以选择走i步.就需要选i步对应的行C(n-2,i)及i步对应的列C(m-2,i).相乘起来. 假设$m\leq n$$$\sum_{i=1}^{m-2} ...

  9. iOS开发网络篇—监测网络状态(转)

    文章转载自:http://www.cnblogs.com/wendingding/p/3950114.html iOS开发网络篇—监测网络状态 一.说明 在网络应用中,需要对用户设备的网络状态进行实时 ...

  10. IE下实现PlaceHolder

    /* * jQuery placeholder, fix for IE6,7,8,9 * @author JENA * @since 20131115.1504 * @website ishere.c ...