linux一个软件多版本共存,编译GCC及其多版本并存控制

无论是作为一名Linux Geek,或是面向Linux的软件工程师,还是嵌入式Linux开发人员,我们都离不开GCC,GCC在Linux中的重要性,从gcc-${version}-base软件包便知道其有多霸道了。而对开发人员来说,编译程序自然更离不开GCC了,并且对于有的软件包,有可能只针对特定版本的GCC,或许是一个版本很老的GCC(因为随着GCC的成长,它更加成熟,更加标准化,以前开发的软件包,可能会依赖当时的GCC版本,虽然能通过当时的GCC编译,然而却不能通过当前较新版本的编译检察),于是,我们不得不使用不同版本的GCC编译器。

说了这么多,只为说明一个问题:我们可能会经常使用不同版本的GCC,而且我们可能要通过GCC源码,手动编译安装,其主要原因有如下两点:

1.针对不同分发版的Linux,不一定能马上找到其支持的二进制安装包,然而源码包却很容易在gnu.org上得到。

2.现有编译好的二进制包配置不符合我们要求,我们需要重新编译,配置编译参数,定制我们想要的GCC。

有了多个版本的GCC编译器,我们又如何方便快捷地管理它们呢?如果管理得不好,GCC的toolchain错乱,多个版本之间相互调用中间处理程序(如cpp, compile pre-processing等),有可能因此编译一个程序老半天,看着make的一大堆莫名其妙的错误输出,足以让我们郁闷半天。

所以,编译安装GCC重要,管理好不同版本GCC共存更重要。

我现在便以编译最近的gcc-4.4.0为例,讲解编译g

你可能感兴趣的:(linux一个软件多版本共存)