QGIS简介与源代码编译

QGIS(http://qgis.org)是一个集成了很多个开源的空间数据处理库的桌面GIS软件,支持Python脚本。QGIS基于QT和SIP进行开发,支持Windows\Linux\MacOS等操作系统,可以访问MySQL/PostGRE等数据库的空间数据,可以连接到OpenstreetMap拉取数据做本地分析和制图。

跟专业的GIS平台如SuperMap(http://www.supermap.com.cn)、ArcGIS等相比,QGIS虽然功能算不上强悍,好多模块还有Bug,但处理一些小数据、画几个简单的地图倒也是绰绰有余,而且是免费和开源的,作为学习是一个非常不错的起点(那些商业软件可不会给你看源代码,而且死贵死贵的....,不过,要做项目和应用系统,还是推荐用SuperMap了,可以支持服务器、桌面、移动端、Web的全面开发,还有完善的培训和技术支持,而QGIS只是一个小型的桌面工具)。

目前版本的QGIS(2.10.0)是基于QT4.8.6和Python2.7.9的,都是上一代的最终稳定版本,可以保证环境的稳定,但确实有点老了。要知道QT都5.5了,Python都3.4了。不过,目前官方的Team就是这样搞的,要是自己去升级的话,估计要长好多包啊,因为很多库都是没有最新版本的。

使用上就不多说了,既然是学习,自己编译和看源代码那时必须的。

先说一下基础环境,我用的VirtualBox5.0+UbuntuKylin15.04虚拟机。因为QGIS用的软件库有点老,别随便装软件(否则弄个新的库可能不兼容),最好是搞个全新的虚拟机进行安装。

下载:http://qgis.org/en/site/forusers/download.html,我从这儿下的2.10的版本,是目前最新的稳定版。

也可以到这里去:https://github.com/qgis/QGIS 使用git clone抓下来目前开发的代码,目前是2.11开发版。不过,我抓的这个版本编译没有通过,2.10的倒是很顺利。

开始安装一些支持库,完整的参考见这里:https://htmlpreview.github.io/?https://github.com/qgis/QGIS/blob/master/doc/INSTALL.html#toc4  。

我用的UbuntuKylin 15.04是Vivid版本,执行下面的操作进行安装。

apt-get install bison cmake doxygen flex git graphviz grass-dev 
libexpat1-dev libfcgi-dev libgdal-dev libgeos-dev libgsl0-dev 
libopenscenegraph-dev libosgearth-dev libpq-dev libproj-dev 
libqscintilla2-dev libqt4-dev libqt4-opengl-dev libqt4-sql-sqlite 
libqtwebkit-dev libqwt5-qt4-dev libspatialindex-dev libspatialite-dev 
libsqlite3-dev lighttpd locales pkg-config poppler-utils pyqt4-dev-tools
 python-all python-all-dev python-pyspatialite python-qscintilla2 
python-qt4 python-qt4-dev python-sip python-sip-dev qt4-doc-html 
spawn-fcgi txt2tags xauth xfonts-100dpi xfonts-75dpi xfonts-base 
xfonts-scalable xvfb cmake-curses-gui

然后,执行下面的过程进行下载、解包、编译:

sudo apt-get install build-essential
wget http://qgis.org/downloads/qgis-latest.tar.bz2
tar -vxf qgis-latest.tar.bz2
cd qgis-2.10.0
mkdir build
cd build
cmake ..
make

完成后,进入build\ouput\bin,运行qgis,正常的话应该已经可以使用了。

如果要进行插件的开发,可参考:http://qgis.org/en/site/getinvolved/development/index.html#plugin-development

如果只是下载代码编译,可能有的库没有安装,也可以下载QGIS的安装包先进行安装。

sudo gedit /etc/apt/sources.list
#编辑软件源列表,然后加入下面两行:
deb  http://qgis.org/debian vivid main
deb-src http://qgis.org/debian vivid main
#注意:vivid是Ubuntu15.04的版本号代码,如果是其它的,需相应修改。
#参考:

#然后,加入源的认证码:
gpg --keyserver keyserver.ubuntu.com --recv DD45F6C3
gpg --export --armor DD45F6C3 | sudo apt-key add - 

#最后,执行安装操作。
sudo apt-get update
sudo apt-get install qgis python-qgis qgis-plugin-grass

#大功告成,进控制台,运行之。
qgis
时间: 2024-10-11 02:25:04

QGIS简介与源代码编译的相关文章

3. Gradle源代码编译以及源代码分析

一. Gradle简介 Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建工具.它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各种繁琐配置.---来源于百度 对于自己而言,作为一个Android程序员,我自己使用就是用它来编译android程序,以前用ant,现在用gradle. 但是个人觉得在android studio gradle属性又多又乱,不知道总共有哪些属性:同时对于框架,自己也不喜欢黑盒使用它,总觉得心里没

Ubuntu通过源代码编译安装Octave 4.0

本教程/笔记,意在指导在Ubuntu及其它Linux系统上怎样通过源代码安装Octave. Octave简单介绍 Octave是GNU旗下取代matlab的数学工具软件,语法与matlab高度兼容.而且支持一些独有的更清晰更符合Linux社区习惯的语法. 尽管在一些详细工具包和部分特性.效率上不如matlab.可是对于一般用户,它是matlab的一个有效的合法的免费的替代工具. 3.8版本号之前官方没有GUI界面,这无疑是它在普及方面的一个重大阻碍,让想使用GUI,必须下载第三方的工具(如qto

源代码编译MYSQL5.6 环境下的MHA+KEEPALIVED的安装和维护

前    言 摘   要 MHA 是当 master 出现故障,挑选一个 slave 作为新的 master 并构建成新的 主从架构的管理工具.从 master 出现故障到构建成新的主从架构时间是 10-30 秒.在 master 出现故障时可能会出现 slave 同步的数据不一致的现象,此工具 可以自动应用差异的中继日志到其他 slave 上保证数据的一致性. 一.Mha 优点 1.M aster crash 时可以快速的进行故障切换. 9-12 秒内可以检测到 master 故障, 7-10

Jenkins 源代码编译

最近一直想写一个关于 Jenkins 管理的 InelliJ 插件,但是尝试很多次总是在登录认证上面失败,各种办法都不起作用,而且官方的文档含糊不清,就动起了从源代码编译在开发环境中进行调试. 废话少说,下面开始说明 Jenkins 的编译过程. 环境准备 首先,JDK 环境是必须的了,而且要设置好 JAVA_HOME 环境变量,因为 Maven 会使用到,我这里使用的是最新的 Java 8 1.8.0_112. 然后需要的就是 Maven 了,我这里使用的是 3.3.9 由于要使用 Git 来

Storm-0.9.2-incubating源代码编译打包

近期遇到一些同学询问Storm-0.9.2-incubating源代码编译打包的问题,现将编译步骤说明例如以下: 1.凝视掉project各pom文件里关于maven插件(maven-gpg-plugin)的内容,目的是规避错误: 当然,该错误也能够忽略,即能够不进行上述凝视操作 2.在project根文件夹下运行maven命令: mvn clean compile package -P dist -Dmaven.test.skip=true 3.进入文件夹:storm-dist/binary,

3DSlicer源代码编译过程vs2008+windows xp [转]

一 下载QT源代码编译 1.  简述   在 Windows2000/xp/vista 下,安装 VS2008, QT 4.7.2 :并在 VS2008上建立 QT 的集成开发环境,利用 VS2008 开发环境开发,调试 QT 程序:2. 所需程序   VS2008以及VS2008Sp1                                  //  VS2008 的安装程序:   qt-everywhere-opensource-src-4.7.4.tar.gz          /

Nginx+Php-fpm+MySQL+Redis源代码编译安装指南

说明:本教程主要包括以下三个部分: 1.      源代码编译安装Nginx 2.      源代码编译安装php以及mysql.redis扩展模块 3.      配置虚拟主机 文中所涉及安装包程序均提供下载链接,欢迎使用 运行环境以及前置条件:Ubuntu 12.04 LTS 已安装g++编译环境 所有源程序路径位于:[email protected]:/home/shihai/Desktop/Nginx文件夹下,如下图所示: 程序安装路径位于:/usr/local文件夹下 第一部分:安装N

源代码编译

CentOS程序包管理器之编译安装 为什么要进行源代码编译安装? 1.对应的程序包并不能直接获取到: 2.已经编译好的二进制中,尚不包含我们所需要的功能: 3.已经编译好的二进制中,包含的功能太多,我们并不需要: 源代码包有两种: 由程序员直接打包的源代码:name-VERSION.tar.gz 由第三方利用rpm工具制作的rpm源代码包:name-VERIONS-release.src.rpm /usr/src/name-VERIONS 源代码的组织形式: 1.多文件组成 2.文件中的代码之间

Linux DNS源代码编译安装(五)

DNS源代码的编译安装. 官方bind下载地址:www.isc.org这里我们编译的是bind-9.9.5.tar.gz版本 1.编译环境  Desktop Platform Development  Development tools  Server Platform Development 2.展开安装包查看编译命令 首先我们应该先看下服务器时间,[[email protected] ~]# tar xf bind-9.9.5.tar.gz -----展开安装包[[email protect