C. GRASS 源代码的获取/编译

Linux 版本的 GRASS 二进制文件往往可以正常工作。为什么有人会想要摆弄源代码呢?

让我们尝试用另一个问题来回答这个问题:“为什么我不能获取我的 GIS 的源代码,以便我可以了解它是如何工作的,并可能修复一些东西,使其按照我喜欢的方式工作?”(您可能知道这个问题的答案,至少对于许多商业软件包来说是这样。)

如果您想

  1. 添加任何大量现有的 alpha 和贡献的 GRASS 函数,

  2. 理解函数是如何工作的(是否有任何编程捷径或性能增强影响了函数的准确性?我可以提高函数的性能吗?)

  3. 修改或增强代码(如果您这样做,请参阅附录 D!),

  4. 尝试编译几千万字节的源代码,本附录是为您准备的。另请查看附录 E。

首先,您需要获取源代码和 GRASS 安装指南。您可能还想获取 GRASS 程序员手册和用户参考手册。要做到这一点

ftp moon.cecer.army.mil
login: anonymous
password: your email address
cd pub/grass/grass4.1/release/source
get README.4
get README.5
image
mget s4* (or s5*, your choice)
cd ../../documents
get installGuide.ps.Z
cd /manuals/programmer/postscript
get progman.ps.Z
cd ../../user/postscript
get refman.ps.Z
bye
    

别忘了这个网站。在 pub/grass/grass4.1/document 目录下,有一些关于 GRASS 更高级程序的教程。有两种源代码选项(我在这里只讨论 GRASS 4.14 版本,尽管 4.15 版本也可用)。pub/grass/outgoing 目录包含许多贡献的函数(以及许多其他用于增强您的系统的候选程序)。

按照 README.4 文件安装 GRASS 4.14 版本(有时称为 4.1.4 版本)源代码。按照 README.5 文件安装 GRASS 4.15 版本(有时称为 4.1.5 版本)源代码。

安装源代码后,解压缩并打印 installGuide.ps.Z(或者如果您喜欢 troff 版本并从相邻目录获取了它)。您可能还想同时解压缩并打印 refman.ps.Z 和 progman.ps.Z。请注意,progman.ps.Z 被称为程序员手册,但也包含关于数据格式和目录结构的宝贵信息。高级用户可能还想了解 GRASS 系统实用程序,即使他们不会在代码中调用它们。

现在,使用 GRASS 安装指南(来自 installGuide.ps.Z)来指导您完成安装。本文档的厚度起初可能会让人望而生畏。然而,如果您自己安装了 Linux,您应该已经准备好应对 GRASS 安装。如果您的系统上有一两个函数无法编译,请不要感到惊讶。我自己的 Linux 系统上也有几个未编译的函数。幸运的是,这些是我不使用的函数…… 总有一天我会回到它们,修复它们,并编译它们!?

这是一个最新的补充,关于如何安装新发布的GRASS 4.2,来自贝勒大学。这段文字由贝勒大学提供,由于它仅在几天前发布,因此我未对其进行编辑。请注意它与其他安装的相似之处。