加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

QGIS1.7.1版本编译

发布时间:2020-12-13 18:23:42 所属栏目:百科 来源:网络整理
导读:QGIS1.7.1编译 (仅将此文献给喜欢调试QGIS的Giser) 编译qgis开始 参考文档:{ http://download.osgeo.org/qgis/doc/manual/qgis-1.6.0_coding-compilation_guide_en.pdf } 参考网址:{ http://www.qgis.org/wiki/Building_QGIS_from_Source } 编译环境:wi

QGIS1.7.1编译

(仅将此文献给喜欢调试QGIS的Giser)

编译qgis开始

参考文档:{

http://download.osgeo.org/qgis/doc/manual/qgis-1.6.0_coding-compilation_guide_en.pdf }

参考网址:{ http://www.qgis.org/wiki/Building_QGIS_from_Source }

编译环境:windowsxp,vs2008,Qt4.5.0

1. 下载软件;

下载Gnuw:安装到C:GnuWin32

{

Microsoft Windows Server? 2003 R2 Platform SDK:http://download.microsoft.com/download/f/a/d/fad9efde-8627-4e7a-8812-c351ba099151/PSDK-x86.exe

Flex:http://gnuwin32.sourceforge.net/downlinks/flex.php

Bison:http://gnuwin32.sourceforge.net/downlinks/bison.php

注意:拷贝:GnuWin32/include/unistd.h到vs2008安装目录下../VC/include

}

下载安装OSGEO4W,安装到C:OSGeo4W

{

OSGeo4W:http://download.osgeo.org/osgeo4w/osgeo4w-setup.exe

选择安装下面lib:

expat

fcgi

gdal17

grass

gsl-devel

iconv

pyqt4

qt4-devel

qwt5-devel-qt4

sip

}

下载安装Cmake;

{

CMake :http://www.cmake.org/files/v2.8/cmake-2.8.2-win32-x86.exe

}

下载安装Qt(qt-win-opensource-4.5.0-vs2008.exe)

2. 下载qgis代码;qgis1.6.0和qgis1.7.1已经编译通过:

http://qgis.org/downloads/qgis-1.6.0.tar.bz2

http://qgis.org/downloads/qgis-1.7.1.tar.bz2

3. 指向代码;如下设置

在源码文件夹建立Build文件夹

postgresql库文件指定osgeo4w中的lib下的libpq.lib文件

4. 处理一下:qgis1.6.0版本需要处理;

使用bison.exe 生成qgssearchstringparser.cpp 文件时会出错误,错误信息如下:

C:GnuWin32binbison.exe -oD:/QGIS1.6.0/Build/src/core/qgssearchstringparser.cpp -d -v -t D:/QGIS1.6.0/src/core/qgssearchstringparser.yy

if errorlevel 1 goto VCReportError

goto VCEnd

:VCReportError

echo Project : error PRJ0019: A tool returned an error code from "Generating qgssearchstringparser.cpp"

exit 1

因此,必须手工生成该文件,在dos环境下,进入bison.exe文件所在的目录,执行下述命令:

c:&;cd GnuWin32

c:gnuwin32>cd bin

c:gnuwin32bin>bison.exe -o D:/QGIS1.6.0/Build/src/core/qgssearchstringparser.cpp -d -v -t D:/QGIS1.6.0/src/core/qgssearchstringparser.yy

这里D:/QGIS1.6.0指的是ggis源码所在的目录,D:/QGIS1.6.0/Build指的是cmake生成的vc工程文件所在的目录,上述命令表示用qgssearchstringparser.yy在vc工程文件所在的目录下生成qgssearchstringparser.cpp 文件。

对于qgis_core工程,需要手动生成qgssearchstringparser.cpp,方法如下

C:/GnuWin32/bin/bison.exe -oD:/QGIS1.6.0/Build/src/core/qgssearchstringparser.cpp -d -v -t D:/QGIS1.6.0/src/core/qgssearchstringparser.yy

对于qgis_analysis工程,需要手动生成qgsrastercalcparser.cpp,方法如下

C:/GnuWin32/bin/bison.exe -p raster -oD:/QGIS1.6.0/Build/src/analysis/qgsrastercalcparser.cpp -d -v -t D:/QGIS1.6.0/src/analysis/raster/qgsrastercalcparser.yy

编译qgis1.7.1版本不需要本步骤处理。

5. 启动编译,成功运行!只需要按下2个F7即可。(经过测试,qgis1.7.1版本为稳定版本,源码保重包含了CODING.pdf和INSTALL.pdf文件,对于qgis二次开发,可谓是绝佳宝典)

建议使用debug编译lib库,方便后面案例应用调试;(我曾经使用RelWithDebInfo格式的lib、dll出现了一个错误QWidget: Must construct a QApplication before a QPaintDevice,设定了debug编译,拷贝相应库到对应文件夹,问题解决)

6. 测试案例,参考链接6,里面包含设置与调试运行;

7. Enjoy it!

8. 可能出现的问题:

a) Python问题,建议选择osgeo4w中的python,不推荐使用arcgis等软件提供的python;

b) Qt安装之后,设置环境变量QTDIR并指向相应位置、并将其添加到path中(%QTDIR%;%QTDIR%bin),添加GnuWin32到path中(C:GnuWin32bin;)等

c) 其他问题,诸如应用程序无法正常启动(0xc0150002) 的办法解决参考网上解决;

9. 参考连接

a) 参考编译:http://blog.sina.com.cn/s/blog_62cd89530100t9um.html

b) 参考编译:http://www.52php.cn/article/p-pjqbwhtn-bbp.html

c) 参考编译:http://www.cnblogs.com/ajeyone/archive/2011/05/12/2044680.html

d) 编译问题:http://lzchenheng.blog.163.com/blog/static/838335362011274940450/

e) 示范程序:http://download.csdn.net/detail/lzchenheng/3356813

f) QGIS二次开发介绍:

http://lzchenheng.blog.163.com/blog/static/838335362011214103147804/

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读