我正在从 XP 迁移到 Linux。(我是 Linux 新手)
我已使用 SPM 在 Ubuntu 上成功安装了 CLIPS。不过,我想从源代码构建 CLIPS — 因为我将扩展其当前功能。
我已经从以下网站下载了 CLIPS 源代码 (v6.2.4) http://sourceforge.net/projects/clipsrules/files/CLIPS/
进入我的 /home/morpheous/projects/CLIPS 文件夹,现在我想构建它。但是,我对 gnu build tools 和 make 还不熟悉(我已经运行了 sudo aptitude install build-essential)。
有人能就如何构建 CLIPS 提供任何帮助/说明吗(我怀疑我可能还需要构建 X11 接口 - 但目前这不是一个优先级较高的任务)
答案1
快速浏览项目主页表明 Linux 不是一个受支持的环境,只有 Windows 和 OSX 受支持,因此可能没有使用标准 GNU 构建链快速构建它的方法(您可能需要构建一个新的 makefile 或类似文件,并且由于您不熟悉相关工具,这很可能会花费时间和精力)。
是这个包相同的工具?如果是这样,那么有人已经为你完成了这项工作,aptitude install clips
如果你启用了 universe,它应该能解决问题(或者你也可以在 GUI 包管理器中找到它)。
编辑:根据 ~quack 的评论,我认为之前对你的问题理解有误。Debian/Ubuntu 中的所有软件包都有对应的源包(尽管并不总是一对一的关系,因为在大型项目中,一个源包可能会构建成几个二进制包)。
如果您查看上面链接的软件包详细信息页面,您将看到文件clips_6.24.orig.tar.gz
和的链接clips_6.24-3.diff.gz
。前者将是使用的官方上游源,后者是包含软件包维护者添加的更改的补丁。差异将包括他们需要创建的任何构建脚本(或更改,如果构建脚本存在但不符合发行版的构建策略)以及从更高版本中移植的安全修复程序。
您可以从那里获取文件,但最好使用apt
,dpkg
因为这将降低本地机器对其所含软件包的了解被严重错误记录的风险(尽管对于应用程序来说,这个问题比对于库来说要小得多)。
总体模式是:
- 获取依赖项
apt-get build-dep <package_name>
- 获取源码包
apt-get source <package_name>
- 进行你需要的任何更改
- 使用以下方式构建二进制包
dpkg-buildpackage
- 使用以下命令安装生成的包
dpkg
看这个文件了解更多详细信息。该页面适用于 Debian,但 Ubuntu 的打包过程在设计上几乎相同。您可能会遇到一些额外的复杂情况,但希望这些信息至少可以帮助您入门。
如果你做想要从原始上游源构建(可能是因为 Ubuntu 源包不够新,无法满足您当前的需求),那么您会发现<package>.orig.tar.gz
和<package>.diff.gz
档案中的数据很有价值,它们可以为您提供需要制作/修改哪些构建脚本才能编译源代码的指针,如果上游版本还没有合适的脚本/makefile(如您在本例中发现的那样)。但是,如果您选择这种方式,您也需要从上游源编译其他包,因为更高版本可能需要它所依赖的包的更高版本,而不是标准存储库中提供的版本。