安装

使用 Make

既然编译已经完成,您就需要将编译后的文件复制到一个合适之处(通常是在 /usr/local 的某个子目录中)。

通过一个特殊的目标 -- installmake 将完成该任务。所以,执行 make install 将安装所有需要的文件。

通常,在 INSTALLREADME 文件中将描述该过程。不过有时候,开发人员会忘了提供这一资料。那时,您就必须亲自安装所有东西了。

复制:

  • 可执行文件(程序)到 /usr/local/bin 目录。

  • 库文件(lib*.so 文件)到 /usr/local/lib 目录。

  • 头文件(*.h 文件)到 /usr/local/include 目录(请注意不要删除原来的)。

  • 数据文件通常到 /usr/local/share。如果您不知道安装的过程,您可以先试着不复制数据文件运行程序,然后就可以按照程序的提示将他们复制到正确的位置了(比如根据某个出错信息:Cannot open /usr/local/share/glloq/data.db )。

  • 文档的安装有一点不同:

    • man 文件通常会被复制到某个 /usr/local/man 的子目录中。一般,这些文件的格式为 troff (或 groff),且它们的扩展名是某个数字。它们的文件名是某个命令的名称(例如:echo.1)。根据其扩展名 n 将其复制到 /usr/local/man/man<n>

    • info 文件复制到 /usr/info/usr/local/info 目录。

完成!祝贺!您现在能够编译整个操作系统了!

问题

如果您刚刚安装了某个自由软件(比如 GNU tar),并且当您执行该软件的时启动了其他的程序,或者它不像您直接在 src 目录中测试运行的样子,那很可能是 PATH 问题。它使得系统在某个另外的目录中寻找您新安装的程序。请执行 type -a <程序> 检查。

解决方案:将您的安装目录放到 PATH 变量中更加前面;且/或,删除或者重命名哪些不请自来的程序文件;且/或,重命名您自己的新程序(比如将前例中的程序命名为 gtar)以避免混淆。

如果您的 shell 允许的话,您还可以取别名(比如,将 tar 指定为 /usr/local/bin/gtar)。