虽然使用Ports Collection编译和安装软件非常简便,然而仍有两个理由来 使用手工编译安装方式。一方面是Ports Collection中并不能涵盖所有的软件,有很 多软件没有收入Ports Collection中。有很多原因使得一些很优秀的软件没有被收集 入Ports Collection,例如,版权因素,或者没有志愿者对它移植到FreeBSD进行维 护。另一方面,即使是通过Port来定制软件,仍需要了解了手工编译安装的过程和各 种编译工具的使用,才能正常进行定制工作。
通常在FreeBSD下编译并安装应用程序并不困难,因为FreeBSD是一种非常标 准的Unix,为Unix开发的标准C程序很容易就能在它上面编译运行。
为了编译和安装一个应用程序,必须要了解编译和运行软件的一般方法。对 于大型程序和要求高效率的软件,通常用高级语言C来开发,使用C语言编译器将C源 程序编译成执行程序。由于使用高级语言不依赖于硬件结构,这使得软件非常容易移 植。Unix不仅提供了编译器,而且还提供了众多的工具来帮助进行编译和维护,最有 用的工具为make。
C作为一种编译型的高级语言,这就是说运行C程序之前要将其先编译成可执 行的由机器指令构成的执行程序,因此就需要使用一个编译器来对C源代码进行处理 ,FreeBSD使用的是GNU的C编译器。
$ cc hello.c
$ ./a.out
Hello, world!
|