2.3.2 手动编译

在包管理器出现以前,必须学会自己手动编译下载好的软件包。当时的软件包大多数以C或者C++进行开发,用户往往需要自行使用gcc进行编译,并且处理好链接的问题。

在configure以及make脚本被广泛运用之后,这些麻烦不再出现了。这两个脚本可以自动检查软件的依赖情况,设置好正确的编译选项,同时甚至可以把文档安装在正确的位置。

大多数的软件都会提供.deb格式的软件包,这样我们就可以简单地使用apt或者dpkg来解决问题了。有时一些项目确实没有提供这样的便利条件,比如从GitHub上下载的软件包,或者手动下载的源码,就不得不自行手动编译了。

在下载完成后,一般的步骤显示解压缩tar包:

      $ tar xvf latest-software.tgz

然后cd进入源文件夹,找到README以及INSTALL这两个文件;大致阅读一下README文件,它一般会告诉你安装的相关事宜。接下来就可以安装了,安装的步骤在大部分情况下是一样的,就是这几条命令:

      $ ./configure
      $ make
      $ sudo make install

提示


具体以软件的README、INSTALL等安装文件为准。

Git是被Linus开发用作Linux内核代码的版本控制系统的,在开发时的目标是让这个软件简单易上手,如图2-9所示。

图2-9

在树莓派上直接使用./configure命令可能会把软件安装到我们不希望它安装到的位置,比如/usr/local/lib。在以后的使用过程中,可能会因为软件库的搜索路径中不包含这些安装路径而出现问题。

解决这个问题非常简单,只需要自己设置新的安装路径即可:

      $ ./configure --prefix=/usr --libdir=/usr/lib/arm-linux-
      gnueabihf