ubuntu debian这些系统内核和编译工具不停的在更新,版本越来越高。
有时候需要编译一些几年前的程序,发现一些语法变了,一个个改太麻烦。只有安装老版本的编译器才是最明智的选择。
linux安装GCC和一些编译工具
sudo apt-get install gcc build-essential binutils
ARM交叉编译器安装(软浮点,适合ARM9、ARM11之类的处理器)
sudo apt-get install gcc-arm-linux-gnueabi
ARM交叉编译器安装(硬件浮点)
sudo apt-get install gcc-arm-linux-gnueabihf
这样安装都是安装当前操作系统的适用的版本,很多时候我们需要用低版本的编译器去编译低版本的内核或者程序
这时候我们可以这样安装低版本的编译器
sudo apt-get install gcc-4.8
sudo apt-get install gcc-4.8-arm-linux-gnueabi
sudo apt-get install gcc-4.8-arm-linux-gnueabihf
这样可以安装,但是使用的时候必须得在GCC后面加上版本号,后面我们得借助update-alternatives来选择现在想使用的
命令参数:update-alternatives: --install needs <link> <name> <path> <priority>
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 30
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 30
sudo update-alternatives --config gcc
###输出
There are 2 choices for the alternative gcc (providing /usr/bin/gcc).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/bin/gcc-4.8 30 auto mode
1 /usr/bin/gcc-4.8 30 manual mode
2 /usr/bin/gcc-5 30 manual mode
Press <enter> to keep the current choice[*], or type selection number: 0
同理交叉编译器也一样
sudo update-alternatives --install /usr/bin/arm-linux-gnueabi-gcc arm-linux-gnueabi-gcc
/usr/bin/arm-linux-gnueabi-gcc-5 20
sudo update-alternatives --install /usr/bin/arm-linux-gnueabi-gcc arm-linux-gnueabi-gcc /usr/bin/arm-linux-gnueabi-gcc-4.9 30
sudo update-alternatives --config arm-linux-gnueabi-gcc
##输出
There are 2 choices for the alternative arm-linux-gnueabi-gcc (providing /usr/bin/arm-linux-gnueabi-gcc).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/bin/arm-linux-gnueabi-gcc-4.9 30 auto mode
1 /usr/bin/arm-linux-gnueabi-gcc-4.9 30 manual mode
2 /usr/bin/arm-linux-gnueabi-gcc-5 20 manual mode
Press <enter> to keep the current choice[*], or type selection number: 0