燃烧的梦想
 燃烧的梦想,流水的时光 

2006-03-24 Fri

Mapserver/Ka-map在桌面Linux下的实验环境搭建笔记

长城小站是由志愿者支持的公益性网站,无固定经济来源。2012年小站台历是由各方网友赞助图片、设计、印刷精心制作的纪念品,用于小站运营经费筹款。
欢迎您购买小站台历,支持长城小站与小站博客的发展。
1.目标:
  [实验目标]:搭建基于桌面Linux(如FC2)的Mapserver实验环境,包括Webserver+Ka-map运行环境、编译环境和必要的工具集。
  [本文目标]:降低mapserver在Linux上的搭建难度,推广开源GIS和其他开源产品的使用。
  [本文读者]:像我一样的Mapserver和Linux入门者

2.环境描述
  这是我的实验环境。

  [硬件]:
  HP
Pavilion dv4000 笔记本
  CPU Celeron M 1.5G
  Mem 512M

  [桌面Linux选择]:
  Co-Create Linux SP1 1206RC
  由于FC2在去年中已经停止升级维护,所以采用了国内发行的基于FC2的桌面Linux版本Co-Create Linux SP1 1206RC,这个版本由http://www.opendesktop.net/
社区提供支持,是一款xp操作风格,适宜初学者/办公用户使用的桌面操作系统。
  Co-Create Linux要求机器的CPU不低于PIII800,内存大于128,磁盘空间大于4G。

3.安装桌面Linux和开发环境:

1、安装Co-Create Linux2005 SP1 1206RC版,该版提供了基本桌面环境。
下载地址:ftp://ftp.opendesktop.net/co-create/desktop/2005sp1/Baby2-i386-disc-SP1-20051206.iso 建议下载后刻盘再安装。安装时裸机最好。如果是安装有windows的机器,要求PC只有一个硬盘,然后在硬盘的末尾开出一个空闲分区来进行安装。

2、安装Co-Create Linux2005 SP1 1206RC版开发包
下载地址:ftp://ftp.opendesktop.net/co-create/desktop/2005sp1/cocreate-devel-packages-12-06.iso
可以刻盘安装,也可以下载到硬盘安装。
硬盘安装的方法:在Linux终端下(桌面空白处右键点击鼠标,菜单第一项),在开发包的当前目录下运行命令:
mkdir iso
mount cocreate-devel-packages-12-06.iso iso -oloop
cd iso
sh ./Install.sh --all

4.安装Mapserver运行环境
Mapserver的运行环境包括webserver和支持库
经测试,在CoCreateLinuxSP1+开发包环境下,Mapserver的依赖性关系如下图:

Mapserver的依赖性关系图

图中箭头指向表示依赖关系,如Postgresql-devel依赖于Postgresql-lib。
端点连线表示所需的库文件存在于某个包中,如libodbc.so.1在unixODBC中有。
此外Ka-map还需要PHP和PHP-GD支持,它们的依赖关系如下

PHP的依赖性关系图


Php-devel在后面的编译环境中要用到,此处一块儿列出。

下面安装相关的软件包:
1、在http://mappinghacks.com/rpm/fedora/2/ 上,下载:
gdal-1.2.5-mh1.i686.rpm
geos-2.1.1-mh1.i686.rpm
ogdi-3.1.4-mh1.i686.rpm
postgresql-devel-7.4.6-mh1.i686.rpm
postgresql-libs-7.4.6-mh1.i686.rpm
proj-4.4.9-mh1.i686.rpm

2、在http://rpm.phone.net/ 上搜索基于FC2的其他包,包括unixODBC,httpd,php,php-gd
注意:没有找到php-gd合适的包,下载其他版本的包,通过直接提取文件拷贝到指定位置进行测试,可用。


3、安装
在包所在的目录下(通过浏览器下载的文件位于/root/Desktop/My_Documents/My_Downloads)运行命令:
rpm -ivh unixODBC-2.2.8-5.i386.rpm postgresql-libs-7.4.6-mh1.i686.rpm postgresql-devel-7.4.6-mh1.i686.rpm geos-2.1.1-mh1.i686.rpm gdal-1.2.5-mh1.i686.rpm ogdi-3.1.4-mh1.i686.rpm proj-4.4.9-mh1.i686.rpm

rpm -ivh httpd-2.0.51-2.9.i386.rpm
php-4.3.4-11.i386.rpm php-pear-4.3.4-11.i386.rpm

cp gd.ini /etc/php.d/.
cp gd.so /usr/lib/php4/.

rpm -ivh
mapserver-4.4.1-mh1.i686.rpm
mapserver-php-4.4.1-mh1.i686.rpm
安装完毕

4、启动httpd
service httpd start (或者/etc/init.d/httpd start)
访问http://localhost/cgi-bin/mapserv显示No query information to decode. QUERY_STRING is set, but empty.表明mapserver运行环境安装成功。
注意这个时候的ka-map是运行不了的,原因是php_mapscript.so不能被动态加载。我后来用同一版本(4.4.1)的源码包在本地编译出来的php_mapscript.so使用起来则没有问题,猜测是因为php_mapscipt在由mapserver编译生成的过程中,需要php的include文件,所以对php的版本可能要求严格一致。





火箭人于 2006-03-24 14:59:19 发表在分类:OpenDesktopGis
(52110次点击) | 标签:  



 评论
 · 发表新帖
 留言总数0帖 页次:1/0 每页:20条 


Power by 长城小站, Ver1.0 update at 2024-02-04