<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>LiangXu Wang &#187; 打包</title>
	<atom:link href="http://wlx.westgis.ac.cn/tag/%e6%89%93%e5%8c%85/feed/" rel="self" type="application/rss+xml" />
	<link>http://wlx.westgis.ac.cn</link>
	<description>technology backup/share</description>
	<lastBuildDate>Sat, 14 Jan 2012 03:56:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>构建DEBIAN软件包</title>
		<link>http://wlx.westgis.ac.cn/340/</link>
		<comments>http://wlx.westgis.ac.cn/340/#comments</comments>
		<pubDate>Fri, 30 Mar 2007 12:54:30 +0000</pubDate>
		<dc:creator>wlx</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[package]]></category>
		<category><![CDATA[打包]]></category>

		<guid isPermaLink="false">http://wlx.westgis.ac.cn/340/</guid>
		<description><![CDATA[一直没有系统地看过，这个讲的很详细： http://debian.linuxsir.org/doc/inthedebianway/debian_build_package.html 1. 声明 * 版本信息: 本文档的最新版本将张贴于: LinuxSir.Org论坛 Debian 发行版讨论区 ; 也可以从 http://debian.linuxsir.org/ 获取. * 反馈: 所有评论, 错误报告, 其他信息以及批评, 请邮寄到 etony@tom.com ; 或在LinuxSir.Org论坛 Debian发行版讨论区 张贴. * 版权信息: 本文档的版权(c)2006-2007 归 etony C.F.AN 所有. 转载请注明源自 http://debian.linuxsir.org/ . 2. Debian软件包介绍 在Debian中存在两种类型的软件包： * 源代码包 &#8230; <a href="http://wlx.westgis.ac.cn/340/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>一直没有系统地看过，这个讲的很详细：</p>
<p>http://debian.linuxsir.org/doc/inthedebianway/debian_build_package.html</p>
<blockquote><p><code>1. 声明</p>
<p>    * 版本信息:</p>
<p>      本文档的最新版本将张贴于: LinuxSir.Org论坛 Debian 发行版讨论区 ;</p>
<p>      也可以从 http://debian.linuxsir.org/ 获取.<br />
    * 反馈:</p>
<p>      所有评论, 错误报告, 其他信息以及批评, 请邮寄到 etony@tom.com ;</p>
<p>      或在LinuxSir.Org论坛 Debian发行版讨论区 张贴.<br />
    * 版权信息:</p>
<p>      本文档的版权(c)2006-2007 归 etony C.F.AN 所有.</p>
<p>      转载请注明源自 http://debian.linuxsir.org/ .<span id="more-340"></span></p>
<p>2. Debian软件包介绍</p>
<p>在Debian中存在两种类型的软件包：</p>
<p>    * 源代码包</p>
<p>      源代码包, 包括一个描述源代码包的 .dsc 文件, 一个包含 gzip-tar 归档压缩格式的未经修改源码的 .orig.tar.gz 文件, 一个包含对源代码作 Debian 特有修改的 .diff.gz 文件. 可以使用 dpkg-source 打包和解压 debian 源码文档. 详见联机手册.<br />
    * 二进制包</p>
<p>      二进制包以 .deb 扩展名来表示,这些文件通常称为DEB文件，其中包含可执行文件,文档,配置文件和版权信息及其它一些东西.可以使用 Debian 的 dpkg 工具解包(安装).但除去版权信息(和 changelog.Debian 文件)不讲,二进制包也可以是空的,这种软件包作为过渡包或关联包(也称虚拟包),它们的唯一的作用是用于满足依赖性.</p>
<p>在本文中我们将主要讲述 .deb 包的构建,源代码包的只会有少量舍己</p>
<p>软件包命名约定</p>
<p>Debian软件包命名遵循下列约定: &lt;软件包名称&gt;_&lt;版本&gt;-&lt;Debian修订号&gt;_&lt;平台&gt;.deb</p>
<p>例如</p>
<p>    nano_1.3.10-2_i386.deb</p>
<p>            软件包名称: nano<br />
            版本: 1.3.10<br />
            修订号: 2<br />
            平台: i386</p>
<p>3. .deb 文件的结构</p>
<p>参阅 Debian 的软件包管理系统介绍<br />
4. 修改现有 .deb 文件</p>
<p>比如 nano(1.3.10) 需要满足以下依赖关系:</p>
<p>    $ dpkg-deb -f nano_1.3.10-2_i386.deb depends            //depends 为对应查询段</p>
<p>    libc6 (&gt;= 2.3.5-1), libncursesw5 (&gt;= 5.4-5)</p>
<p>当系统不能满足依赖关系, 比如不能满足里来版本, 可以通过下边的方法处理, 当然这种情况下安装的nano并不一定运行正常, 这种方法可以应用于某些软件的变通安装.</p>
<p>    $ mkdir nano //创建nano目录</p>
<p>    $ dpkg-deb -e ./nano_1.3.10-2_i386.deb ./nano/DEBIAN    //解压控制文件</p>
<p>    $ dpkg-deb -x ./nano_1.3.10-2_i386.deb ./nano           //解压程序文件</p>
<p>    $ vi ./nano/DEBIAN/control                                //修改控制信息</p>
<p>    $ dpkg-deb -b nano nano_1.3.10-2_ill.deb                //重新打包</p>
<p>注:</p>
<p>下载 .deb 包的方法</p>
<p>    * 方法一</p>
<p>      运行命令</p>
<p>          $apt-get install -d packagename</p>
<p>      或</p>
<p>          $aptitude install -d packagename</p>
<p>      将下载 .deb 文件到 //var/cache/apt/archives/ 目录</p>
<p>      如果管理系统数据库中的对应版本不低于源上的版本将不会下载<br />
    * 方法二</p>
<p>      运行命令:</p>
<p>          $aptitude download packagename</p>
<p>      将直接执行下载操作, 将 .deb 文件下载到当前目录.</p>
<p>5. 从当前系统构建 .deb 包</p>
<p>Debian软件包: dpkg-repack 可以用来重新构建已经安装到系统中的软件包为 .deb 文件. 并包含已经修改了的配置文件. 详细新息参阅:</p>
<p>dpkg-repack manpages</p>
<p>或</p>
<p>Debian GNU/Linux Anwenderhandbuch</p>
<p>对于某些需要修改配置后进行大面积安装的软件包, 可以是用 dpkg-repack 重新打包, 然后分发.</p>
<p>运行 dpkg-repack 需要 root 权限，也可以是用 fakeroot 取代 root 权限。例如:</p>
<p>    # aptitude install dpkg-repack</p>
<p>    $ fakeroot -u dpkg-repack nano<br />
    dpkg-deb: building package `nano' in `./nano_1.3.11-2_i386.deb'.</p>
<p>    user@debian:~$ fakeroot -u dpkg-repack apt<br />
    dpkg-deb: building package `apt' in `./apt_0.5.22_i386.deb'.</p>
<p>可以使用 dpkg-deb 进行验证</p>
<p>    $ dpkg-deb  -I ./nano_1.3.11-2_i386.deb<br />
     new debian package, version 2.0.<br />
     size 256488 bytes: control archive= 2749 bytes.<br />
          12 bytes,     1 lines      conffiles<br />
         857 bytes,    22 lines      control<br />
        3529 bytes,    51 lines      md5sums<br />
         613 bytes,    21 lines   *  postinst             #!/bin/sh<br />
         160 bytes,     5 lines   *  postrm               #!/bin/sh<br />
         379 bytes,    20 lines   *  preinst              #!/bin/sh<br />
         288 bytes,    14 lines   *  prerm                #!/bin/sh<br />
     Package: nano<br />
     Priority: important<br />
     Section: editors<br />
     Installed-Size: 1452<br />
     Maintainer: Jordi Mallach &lt;jordi@debian.org&gt;<br />
     Architecture: i386<br />
     Version: 1.3.11-2<br />
     Replaces: pico<br />
     Provides: editor<br />
     Depends: libc6 (&gt;= 2.3.5-1), libncursesw5 (&gt;= 5.4-5)<br />
     Suggests: spell<br />
     Conflicts: nano-tiny (&lt;= 1.0.0-1), pico<br />
     Conffiles:<br />
      /etc/nanorc 0f0e96f9c7e5ffe2338e79c9aacb9b9f<br />
     Description: free Pico clone with some new features<br />
      GNU nano is a free replacement for Pico, the default Pine editor. Pine is<br />
      copyrighted under a restrictive licence, that makes it unsuitable for<br />
      Debian's main section. GNU nano is an effort to provide a Pico-like<br />
      editor, but also includes some features that were missing in the original,<br />
      such as 'search and replace', 'goto line' or internationalization support. .<br />
      (Repackaged on Fri, 26 May 2006 22:17:52 +0800 by dpkg-repack.)<br />
     Architecture: i386</p>
<p>    tony@tony:~/doc/build_package$ </p>
<p>    $dpkg-deb -c ./nano_1.3.11-2_i386.deb<br />
    drwxr-xr-x root/root         0 2006-05-26 22:17:52 ./<br />
    drwxr-xr-x root/root         0 2006-05-26 22:17:52 ./etc/<br />
    -rw-r--r-- root/root     13611 2006-04-06 06:22:03 ./etc/nanorc<br />
    drwxr-xr-x root/root         0 2006-05-26 22:17:52 ./usr/<br />
    drwxr-xr-x root/root         0 2006-05-26 22:17:52 ./usr/share/<br />
    drwxr-xr-x root/root         0 2006-05-26 22:17:52 ./usr/share/doc/<br />
    drwxr-xr-x root/root         0 2006-05-26 22:17:52 ./usr/share/doc/nano/<br />
    -rw-r--r-- root/root      3419 2002-07-19 09:08:58 ./usr/share/doc/nano/BUGS.gz<br />
    -rw-r--r-- root/root      1847 2005-08-30 02:29:02 ./usr/share/doc/nano/AUTHORS<br />
    -rw-r--r-- root/root    102030 2006-03-30 14:34:43 ./usr/share/doc/nano/changelog.gz<br />
    -rw-r--r-- root/root      2338 2005-03-20 05:33:13 ./usr/share/doc/nano/README<br />
    -rw-r--r-- root/root      3234 2006-03-17 01:57:28 ./usr/share/doc/nano/THANKS<br />
    -rw-r--r-- root/root      2206 2005-06-08 10:28:06 ./usr/share/doc/nano/TODO<br />
    -rw-r--r-- root/root      1066 2003-03-24 21:09:26 ./usr/share/doc/nano/UPGRADE</p>
<p>    .....</p>
<p>6. 使用源提供的源代码构建 .deb 包</p>
<p>    * 下载源码包</p>
<p>      APT提供了一套简便的方法帮你获得发布版中众多程序的源代码以及创建一个.deb所需的所有文件。</p>
<p>      首先, 在 /etc/apt/sources.list 文件中加入 deb-src 条目. 详细参阅 APT HOWTO</p>
<p>      然后, 运行命令</p>
<p>          # apt-get update</p>
<p>      或</p>
<p>          # aptitude update</p>
<p>      就可以用下面的命令下载源码包：</p>
<p>          # apt-get source packagename</p>
<p>      或</p>
<p>          # aptitude source packagename</p>
<p>      通常会下载三个文件：.orig.tar.gz，.dsc 和 .diff.gz。对于 Debian 专用的软件包，最后一个文件不会下载，第一个文件的文件名中没有“orig”项。</p>
<p>      dpkg-source 读取 .dsc 文件信息，将源码包解包到 packagename-version 目录，下载下来的源码包中有一个 debian/ 目录，里面是创建 .deb 包所需的文件。</p>
<p>      例如:</p>
<p>          $ apt-get source nano<br />
          Reading package lists... Done<br />
          Building dependency tree... Done<br />
          Need to get 1199kB of source archives.<br />
          Get:1 http://ftp.us.debian.org testing/main nano 1.3.11-2 (dsc) [706B]<br />
          Get:2 http://ftp.us.debian.org testing/main nano 1.3.11-2 (tar) [1173kB]<br />
          Get:3 http://ftp.us.debian.org testing/main nano 1.3.11-2 (diff) [25.4kB]<br />
          Fetched 1199kB in 3m46s (5287B/s)<br />
          ... ...<br />
          dpkg-source: extracting nano in nano-1.3.11<br />
          dpkg-source: unpacking nano_1.3.11.orig.tar.gz<br />
          dpkg-source: applying ./nano_1.3.11-2.diff.gz</p>
<p>      做相应调整后, 在源代码的根目录 nano-1.3.11 下运行:</p>
<p>          # dpkg-buildpackage -rfakeroot -uc -b</p>
<p>      将代码编译成为软件包.</p>
<p>      想要下载的源码包自动编译成软件包，只需在命令行中加上 -b，例如:</p>
<p>          # apt-get -b source packagename</p>
<p>      请在下载包所在的目录中运行上面的命令。</p>
<p>          # dpkg -i file.deb</p>
<p>      apt-get的source命令与它的其它命令有所不同，普通用户权限就可以运行source命令，指定文件被下载到用户调用 apt-source package 命令时所处的目录中。<br />
    * 编译源码包所需的软件包</p>
<p>      通常，编译源码包时要用到某些头文件和共享库，所有的源码包的管理文件 (control file) 中都有一个域 "Build-Depends:", 域中指出了编译该源码包需要哪些附加包。</p>
<p>      如果你仅仅想检查一下编译当前包需要哪些相关软件包，可以使用 apt-cache show 命令的一个变种，它将显示软件包信息中有关 Build-Depends 的行。</p>
<p>          $ apt-cache showsrc nano|grep Build-Depends<br />
          Build-Depends: dpkg-dev (&gt;= 1.13.9), libncurses5-dev, libncursesw5-dev, libslang2-dev, debhelper (&gt;= 5.0.22), dpatch</p>
<p>      APT 提供了一个简单的方法下载这些附加包，你只需运行 apt-get build-dep package, 其中 package 就是你打算编译的源码包名称。例如：</p>
<p>          # apt-get build-dep nano<br />
          Reading package lists... Done<br />
          Building dependency tree... Done<br />
          The following NEW packages will be installed:<br />
            build-essential dpatch g++ libncursesw5-dev libslang2-dev<br />
          0 upgraded, 5 newly installed, 0 to remove and 0 not upgraded.<br />
          Need to get 986kB of archives.<br />
          After unpacking 2806kB of additional disk space will be used.<br />
          Do you want to continue [Y/n]? </p>
<p>      这些用于 nano 正确编译指定源码包的附加包将会被安装。注意这个命令不能用来搜索软件的源码包，你得另外运行 apt-get source 下载源码包。</p>
<p>7. 对现有文件打包:</p>
<p>    * 创建工作目录</p>
<p>      构建模拟根目录, 比如 fakeroot :</p>
<p>          $ mkdir fakeroot</p>
<p>    * 部署文件</p>
<p>      在 fakeroot 下构建模拟文件系统, 将欲打包文件放置到对应目录</p>
<p>      形如:</p>
<p>          tony@tony:~$ tree fakeroot/<br />
          fakeroot/<br />
          |-- DEBIAN<br />
          |   |-- control<br />
          |   `-- preinst<br />
          `-- usr<br />
              `-- share<br />
                  `-- doc<br />
                      `-- securing-debian-howto.zh-cn<br />
                          |-- ap-bind-chuser.zh-cn.html<br />
                          |-- ap-bridge-fw.zh-cn.html<br />
                          |-- ap-checklist.zh-cn.html<br />
          ... ...</p>
<p>    * 创建配置文件</p>
<p>      在 fakeroot 下创建DEBIAN目录用于放置控制文件比如:</p>
<p>      control preinst postinst prerm postrm 等, 只有 control 是必须的, 其他为可选.</p>
<p>      可以在 /var/lib/dpkg/info 目录下找到这些脚本的范例</p>
<p>      比如</p>
<p>          tony@tony:~/fakeroot/DEBIAN$ cat control</p>
<p>          Package: securing-debian-howto.zh-cn<br />
          Priority: extra<br />
          Section: doc<br />
          Maintainer: tony &lt;etony@tom.com&gt;<br />
          Architecture: all<br />
          Version: 3.0<br />
          Description: Securing Debian Manual<br />
          This manual describes the security of the Debian GNU/Linux operating system and within the Debian project. It covers some of the common tasks involved in setting up a secure user and network environment, gives information on the security tools available, steps to take before and after a compromise and also describes how security is enforced in Debian by the security team. The document includes a step by step hardening guide and within the appendix there is detailed information on how to setup an intrusion detection system and a bridge firewall with Debian GNU/Linux.</p>
<p>          tony@tony:~/fakeroot/DEBIAN$ cat preinst<br />
          #! /bin/sh</p>
<p>          echo "."<br />
          echo "."</p>
<p>          echo "Welcome to install Securing Debian HOWTO. "<br />
          echo "press any key to continue... "<br />
          read<br />
          exit 0</p>
<p>    * 生成 .deb 包</p>
<p>      在 fakeroot 目录外执行:</p>
<p>          $ dpkg -b fakeroot securing-debian-howto-zh-cn.deb</p>
<p>          dpkg-deb: building package `securing-debian-howto.zh-cn' in `securing-debian-howto-zh-cn.deb'.</p>
<p>      将会在当前目录下生成 securing-debian-howto-zh-cn.deb 包<br />
    * 检查包内容</p>
<p>      可是用以下命令检查:</p>
<p>          $ dpkg -c securing-debian-howto-zh-cn.deb</p>
<p>          $ dpkg -I securing-debian-howto-zh-cn.deb</p>
<p>8. 源代码构建</p>
<p>这次以 leafpad 为例, leafpad 的当前版本为 0.8.9</p>
<p>    * 下载程序源代码</p>
<p>          #wget http://savannah.nongnu.org/download/leafpad/leafpad-0.8.9.tar.gz   </p>
<p>    * 创建工作目录</p>
<p>          # mkdir leafpad  </p>
<p>          #mv leafpad-0.8.9.tar.gz leafpad/</p>
<p>          #cd leafpad</p>
<p>          #tar zxvf leafpad-0.8.9.tar.gz</p>
<p>          #cd leafpad-0.8.9</p>
<p>    * 安装打包环境</p>
<p>      运行一下命令,安装编译 leafpad 所需的环境</p>
<p>          # apt-get install dh-make dpkg-dev g++ patch make libc6-dev fakeroot libgtk2.0-dev cdbs debhelper pkg-config gnome-pkg-tools</p>
<p>    * Debian 初始化</p>
<p>          # dh_make -e etony@tom.com -f ../leafpad-0.8.9.tar.gz</p>
<p>          Type of package: single binary, multiple binary, library, kernel module or cdbs?<br />
           [s/m/l/k/b] s</p>
<p>          Maintainer name : tony<br />
          Email-Address   : etony@tom.com<br />
          Date            : Sun, 28 May 2006 22:38:08 +0800<br />
          Package Name    : leafpad<br />
          Version         : 0.8.9<br />
          License         : blank<br />
          Type of Package : Single<br />
          Hit &lt;enter&gt; to confirm:<br />
          Done. Please edit the files in the debian/ subdirectory now. leafpad<br />
          uses a configure script, so you probably don't have to edit the Makefiles.</p>
<p>    * 构建配置文件</p>
<p>      根据需求修改 debian/ 目录下的内容</p>
<p>      修改 changelog, control,</p>
<p>      以下为自动生成的 changelog, control 配置文件框架</p>
<p>          /leafpad/leafpad-0.8.9/debian$ cat control<br />
          Source: leafpad<br />
          Section: unknown<br />
          Priority: optional<br />
          Maintainer: tony &lt;etony@tom.com&gt;<br />
          Build-Depends: debhelper (&gt;= 4.0.0), autotools-dev<br />
          Standards-Version: 3.6.2</p>
<p>          Package: leafpad<br />
          Architecture: any<br />
          Depends: ${shlibs:Depends}, ${misc:Depends}<br />
          Description: &lt;insert up to 60 chars description&gt;<br />
           &lt;insert long description, indented with spaces&gt;</p>
<p>          /leafpad/leafpad-0.8.9/debian$ cat changelog<br />
          leafpad (0.8.9-1) unstable; urgency=low</p>
<p>            * Initial release Closes: #nnnn  (nnnn is the bug number of your ITP)</p>
<p>           -- tony &lt;etony@tom.com&gt;  Sun, 28 May 2006 22:38:08 +0800</p>
<p>      如有需要自己,根据示例文件 *.ex 生成 postinst, postrm, prerm 等脚本文件<br />
    * 构建 .deb 包</p>
<p>          # dpkg-buildpackage -rfakeroot -uc -b</p>
<p>      如果您已经多次运行了上边的命令, 也可以使用下边的命令快速构建临时 .deb 包:</p>
<p>          #fakeroot debian/rules binary</p>
<p>      将会在其上一级目录生成 leafpad_0.8.9-1_i386.deb</p>
<p>9. 参考文档</p>
<p>    * Debian 新维护人员手册<br />
    * 用Open Source工具开发软件: 软件包制作</code>
</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://wlx.westgis.ac.cn/340/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ubuntu  dapper编译GIS相关软件</title>
		<link>http://wlx.westgis.ac.cn/173/</link>
		<comments>http://wlx.westgis.ac.cn/173/#comments</comments>
		<pubDate>Tue, 21 Mar 2006 06:32:19 +0000</pubDate>
		<dc:creator>wlx</dc:creator>
				<category><![CDATA[GIS]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[dapper]]></category>
		<category><![CDATA[dpkg]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[打包]]></category>

		<guid isPermaLink="false">http://blog.mygis.org/173/</guid>
		<description><![CDATA[目前，DAPPER下默认的GIS软件版本都不是最新的，因此就需要重新编译一下。 主要的几个软件： 1. geos 这个dapper中是最新的，但要注意名称不是libgeos2，而是libgeos2c2a。在进行其他相关软件的打包时要注意更改这个。 2. gdal/ogr 这个dapper中的版本是1.2.6，目前最新的版本是1.3.1，debian unstable库中有这个版本，可以把其source下载下来，重新打包就可以了。 注意打包前要卸载qgis等相关包。 简单说一下打包方法： dpkg-source -x xxx.dsc 然后到目录下修改debian/control及debian/rules软件，分别对应关联文件和参数配置。 我打包的gdal就支持了hdf4和hdf5，这个默认打包是不支持的。 然后： dch -i dpkg-buildpackage -rfakeroot 3. grass 6.1cvs dapper中默认的版本是6.0.1，从grass.itc.it下载官方最新cvs版本，然后注意也要修改control和rules文件，而且这个ubuntu中和debian中好像有差别。tcl/tk都用8.3，ubuntu默认是8.4，因为nviz在8.4中有BUG，所以建议使用8.3版本。 4. postgis 这个dapper中没有，但debian gis库中有，直接下载其deb版本，可以直接安装，版本是1.1.0，目前最新的版本是1.1.1。 5. libgdal-grass 这个包稍微麻烦一点，从gdal下载最新版本1.3.1.2，然后下载debian unstable的1.3.1source版本，然后把1.3.1.2中对应的几个代码文件(grass57dataset.cpp ogrgrasslayer.cpp *.h)都拷贝到1.3.1source版本中，然后重新打包。 6. qgis 参考官方网站的说明(http://qgis.org/index.php?option=com_content&#038;task=view&#038;id=113&#038;Itemid=58)编译安装其最新svn版本。 注意说明的最后一步buildpackage，我没找到这个命令，最后用checkinstall替代了一下。 checkinstall要用最新版本1.6.0（从其网站上下载，有deb版本，下载后ln &#8230; <a href="http://wlx.westgis.ac.cn/173/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>目前，DAPPER下默认的GIS软件版本都不是最新的，因此就需要重新编译一下。<br />
主要的几个软件：<br />
1. geos<br />
这个dapper中是最新的，但要注意名称不是libgeos2，而是libgeos2c2a。在进行其他相关软件的打包时要注意更改这个。<br />
2. gdal/ogr<br />
这个dapper中的版本是1.2.6，目前最新的版本是1.3.1，debian unstable库中有这个版本，可以把其source下载下来，重新打包就可以了。<br />
注意打包前要卸载qgis等相关包。<br />
简单说一下打包方法：<br />
dpkg-source -x xxx.dsc<br />
然后到目录下修改debian/control及debian/rules软件，分别对应关联文件和参数配置。<br />
我打包的gdal就支持了hdf4和hdf5，这个默认打包是不支持的。<br />
然后：<br />
dch -i<br />
dpkg-buildpackage -rfakeroot<br />
3. grass 6.1cvs<br />
dapper中默认的版本是6.0.1，从grass.itc.it下载官方最新cvs版本，然后注意也要修改control和rules文件，而且这个ubuntu中和debian中好像有差别。tcl/tk都用8.3，ubuntu默认是8.4，因为nviz在8.4中有BUG，所以建议使用8.3版本。<br />
4. postgis<br />
这个dapper中没有，但debian gis库中有，直接下载其deb版本，可以直接安装，版本是1.1.0，目前最新的版本是1.1.1。<br />
5. libgdal-grass<br />
这个包稍微麻烦一点，从gdal下载最新版本1.3.1.2，然后下载debian unstable的1.3.1source版本，然后把1.3.1.2中对应的几个代码文件(grass57dataset.cpp ogrgrasslayer.cpp *.h)都拷贝到1.3.1source版本中，然后重新打包。<br />
6. qgis<br />
参考官方网站的说明(http://qgis.org/index.php?option=com_content&#038;task=view&#038;id=113&#038;Itemid=58)编译安装其最新svn版本。<br />
注意说明的最后一步buildpackage，我没找到这个命令，最后用checkinstall替代了一下。<br />
checkinstall要用最新版本1.6.0（从其网站上下载，有deb版本，下载后ln -s /usr/local/sbin/checkinstall /usr/bin/checkinstall）</p>
<blockquote><p>
sudo aptitude install subversion automake1.9 libtool libsqlite3-dev libgsl0-dev libqt4-dev libgrass-dev<br />
sudo ln -s /usr/bin/rcc /usr/share/qt4/bin/<br />
cd /your/directory<br />
svn co https://svn.qgis.org/repos/qgis/trunk/qgis qgis-unstable<br />
mv qgis-unstable qgis-0.8svn<br />
cd qgis-0.8svn<br />
./autogen.sh &#8211;with-qtdir=/usr/share/qt4 &#8211;with-grass=/usr/lib/grass<br />
make<br />
checkinstall -D<br />
sudo dpkg -i *.deb
</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://wlx.westgis.ac.cn/173/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>

