安装过程

一 :所需组件
1 PostgreSQL 9.4 or higher.
2 Proj4 .reprojection library.
3 GEOS .geometry library.
4 LibXML2. LibXML2 is currently used in some imports functions
5 JSON-C. JSON-C is currently used to import GeoJSON via the function ST_GeomFromGeoJson.
6 GDAL.
以上所需组件最好下载源码安装。

二: 环境信息
Postgresql: 9.4.2
Postgis:    2.2
pgrouting: 2.2
OS :  Ubuntu 15.04
查看方法:
routedb_test=# select postgis_version();
            postgis_version            
---------------------------------------
 2.2 USE_GEOS=1 USE_PROJ=1 USE_STATS=1
(1 row)

routedb_test=# select postgis_version();
            postgis_version            
---------------------------------------
 2.2 USE_GEOS=1 USE_PROJ=1 USE_STATS=1
(1 row)

cat /etc/issue

Ubuntu 15.04

三: 安装依赖包

--3.1 安装 proj
下载地址: http://trac.osgeo.org/proj/
--简要步骤
# mkdir -p /home/postgres/pg_tool/proj
#./configure --prefix=/home/postgres/pg_tool/proj
#  make
#  make install
 备注:安装过程中没报错,并且 /home/postgres/pg_tool/proj 目录下有文件,说明 proj 安装成功。
 
--3.2 安装 geos
下载地址:  http://trac.osgeo.org/geos/
--简要步骤   
# mkdir -p /home/postgres/pg_tool/geos
# ./configure --prefix=/home/postgres/pg_tool/geos --enable-python --enable-ruby
# make
# make check
# make install
 
--3.3 安装 JSON-C
下载地址: http://oss.metaparadigm.com/json-c/
--简要步骤    
# wget http://oss.metaparadigm.com/json-c/json-c-0.9.tar.gz
# mkdir -p /home/postgres/pg_tool/json
# sh autogen.sh
# ./configure --prefix=/home/postgres/pg_tool/json
# make
# make install
 
--3.4 安装 GDAL
下载地址:http://trac.osgeo.org/gdal/wiki/DownloadSource
--简要步骤  
# mkdir -p /home/postgres/pg_tool/gdal
# ./configure  --prefix=/home/postgres/pg_tool/gdal
# make
# make install  
 
--3.5 安装 libxml2
# sudo apt-get install libxml2-dev
备注:也可以在 http://www.linuxfromscratch.org/blfs/view/svn/general/libxml2.html 下载。

--3.6 安装 postgis-2.2
--3.6.1  .bash_profile 新增以下环境变量
export PROJ_HOME=/home/postgres/pg_tool/proj
export GEOS_HOME=/home/postgres/pg_tool/geos
export GDAL_HOME=/home/postgres/pg_tool/gdal
export JSON_HOME=/home/postgres/pg_tool/json
export LD_LIBRARY_PATH=$GDAL_HOME/lib:$JSON_HOME/lib:$PROJ_HOME/lib:$GEOS_HOME/lib
备注:编缉完成后,执行.bash_profile 立即生效。

-- 3.6.2 下载  postgis-2.2
  下载地址: http://postgis.refractions.net/download/

--3.6.3  configure
# ./configure --with-pgconfig=/opt/pgsql9.2.3/bin/pg_config --with-projdir=/home/postgres/pg_tool/proj  --with-geosconfig=/home/postgres/pg_tool/geos/bin/geos-config --with-gdalconfig=/home/postgres/pg_tool/gdal/bin/gdal-config --with-jsondir=/home/postgres/pg_tool/json
备注:执行 configure 之后,如果没报错,会出现以下信息:
如图1

--3.6.4 编译并安装
# make
# make check
# sudo make install (注意需要sudo)

--3.7 安装 pgrouting2.2
下载地址:https://github.com/pgRouting/pgrouting
--简要步骤  
# cd pgrouting
# makedir build
# cd build
# cmake ..
# make
# sudo make install
备注:需要安装依赖的包 libboost-thread-dev,libcgal-dev
详情阅读源码里的README.md
FAQ
Q1:create extension postgis
ERROR:  could not load library "/home/postgres/pg/pgsql/lib/postgis-2.2.so": libproj.so.9: cannot open shared object file: No such file or directory
A1:安装postgis需要启动postgresql,注意把postgresql安装路径配置到path路径下,主要不要使用最新版本的postgresql
Q2:出现如图2所示错误


A2:注意不要安装最新版本的postgresql,最好apt-cache search postgresql
查看一下本系统支持的稳定版本的postgresql,其他如Q1
Q3:-1: error: collect2: ld returned 1 exit status
A3:注意gcc,和g++是否安装,sudo apt-get install build-essential bison libc6-dev
Q4:ERROR:AM_PROG_LIBTOOL command not found
A4:安装libtool包,执行 autoreconf -fvi 注意:最好需要重新生成configure文件,重新make
Q5:还有其他问题
A5:看一下readme.md里依赖的包安装没有,查看出错信息,定位错误原因,然后谷歌搜答案

ubuntu使用postgist,pgrouting的更多相关文章

  1. 路径分析—QGIS+PostgreSQL+PostGIS+pgRouting(一)

    前言 因业务需求,需要做最短路径分析.最近几天查询资料,并自己动手,实现了简单的路径分析. 下面就介绍具体的实现过程. 本篇文章最终结果是在 PostgreSQL 数据库中实现的,后续的可视化展示会继 ...

  2. 关于ubuntu实机与虚机互相copy

    我的开发环境是在ubuntu上的,但是ubuntu上没有官方支持的QQ,有些不太方便,所以在上面虚了一个Win7(先是win10,但是win10最新版本太坑了,不说了),不过经常会出现复制文件,或者文 ...

  3. 在Ubuntu下搭建ASP.NET 5开发环境

    在Ubuntu下搭建ASP.NET 5开发环境 0x00 写在前面的废话 年底这段时间实在太忙了,各种事情都凑在这个时候,没时间去学习自己感兴趣的东西,所以博客也好就没写了.最近工作上有个小功能要做成 ...

  4. Ubuntu 14.04中Elasticsearch集群配置

    Ubuntu 14.04中Elasticsearch集群配置 前言:本文可用于elasticsearch集群搭建参考.细分为elasticsearch.yml配置和系统配置 达到的目的:各台机器配置成 ...

  5. 在Ubuntu 16.10 安装 git 并上传代码至 git.oschina.net

    1. 注册一个账号和创建项目 先在git.oschina.net上注册一个账号和新建一个project ,如project name 是"myTest". 2.安装git sudo ...

  6. 在Ubuntu 16.10安装mysql workbench报未安装软件包 libpng12-0错误

    1.安装mysql workbench,提示未安装软件包 libpng12-0 下载了MySQL Workbench 6.3.8   在安装的时候报错: -1ubu1604-amd64.deb 提示: ...

  7. Ubuntu 16.10 安装KolourPaint 4画图工具

    KolourPaint 4画图工具简单实用,可以绘画.视频处理和图标编辑: • 绘画:绘制图表和“手绘” • 视频处理:编辑截图和照片;应用特效 • 图标编辑:绘画剪贴和标识透明化 1.在Ubuntu ...

  8. 使用ubuntu作为web开发环境的一些感受

    从ms-dos,win95,win98,winMe,winXp,vista,win7,win10我都有使用的经历,我使用时间最长的应属winxp,其次是win7,说实话,我觉得这两个系统是微软做的最好 ...

  9. ubuntu系统下如何修改host

    Ubuntu系统的Hosts只需修改/etc/hosts文件,在目录中还有一个hosts.conf文件,刚开始还以为只需要修改这个就可以了,结果发现是需要修改hosts.修改完之后要重启网络.具体过程 ...

随机推荐

  1. Android 开发笔记“context和getApplicationContext”

    在android中常常会遇到与context有关的内容 浅论一下context : 在语句 AlertDialog.Builder builder = new AlertDialog.Builder( ...

  2. 字节转换/编码转换全为转载GBK,BIG5,utf8,unicode

    C/C++中的字节转换 宽字节转单字节 :size_t wcstombs( char *mbstr, const wchar_t *wcstr, size_t count ); 单字节转宽字节 :si ...

  3. wireshark 包分析命令

    1.查看原地址过滤包命令: ip.src ==192.168.1.1 2.查看目的地址过滤包:ip.dst == 192.168.1.1 3.关键字 eq 等于 "==" ,and ...

  4. 闲来无事写写-Huffman树的生成过程

    前言:最近项目上一直没事干,感觉无聊到了极点,给自己找点事做,补一下大学没有完成的事情,写一个huffman算法Java版的,学校里面写过c语言的. 因为很久没搞数据结构和算法这方面了(现在搞Java ...

  5. Noip2007提高组总结

    两道基础题,后两题比较麻烦,算法想出来后,还是一些细枝末节的问题,需要特别注意,感觉Noip的题目质量还是挺高的,每做一套,都感觉会有大大小小不同的收获,就要月考了,最后把07年的题目总结一下,算是这 ...

  6. HDU题解索引

    HDU 1000 A + B Problem  I/O HDU 1001 Sum Problem  数学 HDU 1002 A + B Problem II  高精度加法 HDU 1003 Maxsu ...

  7. ubuntu安装hadoop 若干问题的解决

    问题1:安装openssh-server失败 原因: 下列软件包有未满足的依赖关系: openssh-server : 依赖: openssh-client (= 1:5.9p1-5ubuntu1) ...

  8. 使用mongodb存取lbs数据

    1,在mongodb中创建lbs_db数据库,collection名称lbs_info,要使用lbs查询功能,需要对二维数据列建立索引 db.lbs_info.ensureIndex( { locs ...

  9. 100% width CSS 在 iPad / iPhone Safari 背景被截断 / 显示不全

    Tips: 调试 iPad 或 iPhone 可在设置中启动调试模式,在 Mac 中的 Safari 浏览器 同样开启开发者模式后,进行联机调试.功能彪悍. 最近在做一个页面时,发现在 iPad 的 ...

  10. Learn Python The Hard Way, 2nd Edition 尾声

    看完了这本书,你决定继续做编程.也许它能成为你的一个职业,也许它能成为你的一项爱好.但你需要一些指导,确保自己不会走错了道路,或帮助你从这个新业余爱好中得到最大的乐趣. 我做了很久的编程.久的你都想象 ...