Linux 平台PostGIS安装
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安装的更多相关文章
- Linux 平台静默安装 Oracle客户端
需求:Linux平台,安装完整版Oracle客户端 Tips:如果只是用到sqlldr,sqlplus功能,可以参考<Linux上oracle精简版客户端快速部署>快速部署精简版:如果需要 ...
- 【android开发】如何在Linux平台下安装JDK环境
原文:http://android.eoe.cn/topic/android_sdk Linux平台JDK安装 本文主要描述如何在Linux平台下安装JDK环境.进入网页:http://www.ora ...
- Arduino可穿戴教程Linux平台下安装Arduino IDE
Arduino可穿戴教程Linux平台下安装Arduino IDE Linux平台下安装Arduino IDE Linux平台下的安装方式和Windows下的zip形式安装是类似的,只是Linux下的 ...
- 如何在Linux平台下安装JDK
原文链接:http://android.eoe.cn/topic/android_sdk 1.下载Java的开发包JDK: JDK有好几个类型版本,我们只需要选择Java SE类型的版本就行了. 进入 ...
- (转载)Linux平台下安装 python 模块包
https://blog.csdn.net/aiwangtingyun/article/details/79121145 一.安装Python Windows平台下: 进入Python官网下载页面下载 ...
- Linux平台下安装MySQL
1.下载RPM包 http://dev.mysql.com/downloads/mysql/5.5.html#downloads 选择[Red Hat & Oracle Enterprise ...
- c语言编译器(linux平台下安装c语言环境)一
gcc : 语言的默认编译器 (ubuntu下输入gcc,可根据终端输出查看是否安装了gcc) g++ : c++的默认编译器 (ubuntu下输入g++,可根据终端输出查看是否安装了g+ ...
- linux平台编译安装Poco C++
1.到官网下载poco-1.4.6p4-all.tar.gz,地址为http://pocoproject.org/download/index.html 2.同时下载说明文档 3.根据说明文档执行安装 ...
- Docker 在 Linux 平台的安装 以及一些常见命令
1,添加,清理 yum 源,查看应用列表 1.1,yum install -y epel-release 1.2,yum clean all 1.3,yum list (可以不运行) 2,安装, 启 ...
随机推荐
- 给Asp.Net MVC及WebApi添加路由优先级
一.为什么需要路由优先级 大家都知道我们在Asp.Net MVC项目或WebApi项目中注册路由是没有优先级的,当项目比较大.或有多个区域.或多个Web项目.或采用插件式框架开发时,我们的路由注册很可 ...
- [译]用AngularJS构建大型ASP.NET单页应用(三)
原文地址:http://www.codeproject.com/Articles/808213/Developing-a-Large-Scale-Application-with-a-Single A ...
- [C#解惑] #2 对象的初始化顺序
谜题 在上一篇C#解惑中,我们提到了对象的初始化顺序.当我们创建一个子类的实例时,总是会先执行基类的构造函数,然后再执行子类的构造函数.那么实例字段是什么时候初始化的呢?静态构造函数和静态字段呢?今天 ...
- Verilog代码规范I
Verilog代码规范I "规范"这问题 "规范"这个富含专业气息的词汇(个人感觉),其实规范这种东西,就是大家都约定熟成的东西,一旦你不遵守这个东西,专业人士 ...
- vs2012 发布网站,
如图这样选择就没有可以得到一个不包括 *.aspx.cs 的网站了.
- restFull常用注解
@GET.@POST.@PUT.@DELETE.@HEAD您可以使用它们来绑定根资源或子资源内的 Java 方法与 HTTP 请求方法.HTTP GET 请求被映射到由 @GET 注释的方法,以此类推 ...
- 转 -- linux IO子系统和文件系统读写流程
我们含有分析的,是基于2.6.32及其后的内核. 我们在linux上总是要保存数据,数据要么保存在文件系统里(如ext3),要么就保存在裸设备里.我们在使用这些数据的时候都是通过文件这个抽象来访问的, ...
- 【51NOD 1478】括号序列的最长合法子段
很恶心啊,一道水题改了半天,主要是各种细节没有注意到,包括左括号剩余时有可能会出错的情况,需要从后往前扫 贡献一组测试数据: ((()))())(())(( 答案:8 1 #include<cs ...
- js处理日期格式化-年月日周
方法一 Date.prototype.format = function(format){ var o = { "M+" : this.getMonth()+1, //month ...
- jQuery打印插件jqprint
码][JavaScript]代码 跳至 [1] [全屏预览] ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 ...