编译freeBSD实用程序的特定版本

时间:2015-08-17 20:08:44

标签: makefile freebsd

我想从源代码编译并运行FreeBSD实用程序的特定版本。

例如,我下载了以下实用程序的repo:https://svnweb.freebsd.org/base/stable/9/sbin/routed/

但是,当我运行make命令时,出现以下错误:

"../Makefile.inc", line 3: Cannot open ../Makefile.inc
make: fatal errors encountered -- cannot continue
*** [all] Error code 1

有人能指出我正确的方向吗?

1 个答案:

答案 0 :(得分:1)

您需要下载整个源代码树。构建系统依赖于树中不同位置的片段。然后;

  • /usr/src
  • 中解压缩来源
  • cd /usr/src/sbin/routed
  • make && make install

看起来你想要9稳定的分支?如果你有可用的subversion,你可以这样做:

rm -rf /usr/src/
svn co svn://svn.freebsd.org/base/stable/9 /usr/src

(根据您的FreeBSD版本,svn也可能被称为svnlite)另请参阅handbook

在我的机器上,完整的/usr/src树是2445 MiB,包括.svn目录。

编辑:请注意,程序依赖于系统调用,库函数或FreeBSD的某个分支/版本中引入的其他功能,它不适用于较旧的分支/版本。< / p>