ubuntu18.04 建立交叉编译工具5.4.0

一般分为两步,

1.首先安装c开发环境,以前的老版本默认不安装,如ubuntu9.04。可以采用以下两个命令中的任意一个来安装标准c开发环境

sudo apt-get install gcc g++ libg++ libgcc1 make gdb

sudo apt-get install build-essential                                 //(常用)

 

中间的版本不知道,但在ubuntu18查看安装了c环境。所以上一步对于现在的版本来说基本用不到。

2.网上下载 arm-linux-gcc-5.4.0.tar.gz

下载(百度云)链接:https://pan.baidu.com/s/1AeqzkboWkJDJjU9HxtXhrA  提取码:uzup 

3.解压文件

(1)在/usr/local下新建文件夹

# mkdir arm

# chmod 777 arm

# cd arm

(2)将下载的工具压缩包复制到新建文件内并解压

#cp  /home/xxx/下载/arm-linux-gcc-5.4.0.tar.gz   ./

#tar xzvf arm-linux-gcc-5.4.0.tar.gz

4.修改环境变量

网上的环境变量修改方法大概有三种,都是通过gedit修改,但是有个问题现在的ubuntu版本,gedit总会出现一些警告,论坛说了一忽略掉。其实也可以通过vi进行编辑保存,只要能达到修改文件的目的即可。

方法一:修改/etc/bash.bashrc文件(此文件只对当前用户适用)

sudo gedit /etc/bash.bashrc
在最后加上 export PATH=$PATH:/opt/FriendlyARM/toolschain/5.4.0/bin  (路径)(注意等号那边不要有空格)

修改完 $source /root/.bashrc 生效

方法二:修改/etc/profile文件(此文件属于系统级别的环境变量,设置在里面的东西对所有用户适用)
sudo gedit /etc/profile
增加路径设置,在末尾添加如下:
export PATH=$PATH:/usr/local/arm/5.4.0//bin

修改完 $ source /etc/profile  生效

方法三:修改/etc/environment文件
sudo gedit /etc/environment
原文件应为
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games“
将其改为
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/arm/5.4.0//bin"

修改过程中可能出现Set document metadata failed: 不支持设置属性 metadata::gedit-position,忽略这个警告。



关于环境变量问题:

环境变量是什么?例如path,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到path中指定的路径去找。用户通过设置环境变量,来更好的运行进程。
如果上面不加入环境变量,要运行arm-linux-gcc这个程序,则每次都要把arm-linux-gcc的完整路径写出来。/usr/local/arm/4.4.3/binarm-linux-gcc 文件名 -o 输出文件名
这样非常的麻烦,所以加到path里面,让电脑知道这个程序在哪里。

5.注册环境变量

立即使新的环境变量生效,不用重启电脑,对应步骤5也有3种方法
方法一:source /root/.bashrc
    或者
   ./etc/bash.bashrc
方法二:source /etc/profile
方法三:source /etc/environment

6.检查是否将路径加入到PATH

echo $PATH
显示内容/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/arm/5.4.0/bin说明已经将交叉编译器的路径加入PATH。至此,交叉编译环境安装完成。

9.测试是否安装成功

方法一:另开一个终端,输入arm-,然后按两下Tab,如果出现下列信息,则表明安装成功
arm2hpdl                            arm-linux-gprof
arm-elf-addr2line                 arm-linux-ld
arm-elf-ar                           arm-linux-nm
arm-elf-as                           arm-linux-objcopy
arm-elf-c++                        arm-linux-objdump
arm-elf-c++filt                     arm-linux-populate
arm-elf-elf2flt                       arm-linux-ranlib
arm-elf-flthdr                       arm-linux-readelf
arm-elf-g++                         arm-linux-size
arm-elf-gcc                          arm-linux-strings
arm-elf-ld                            arm-linux-strip
arm-elf-ld.real                      arm-none-linux-gnueabi-addr2line
arm-elf-nm                          arm-none-linux-gnueabi-ar
arm-elf-objcopy                   arm-none-linux-gnueabi-as
arm-elf-objdump                  arm-none-linux-gnueabi-c++
arm-elf-protoize                   arm-none-linux-gnueabi-cc
arm-elf-ranlib                       arm-none-linux-gnueabi-c++filt
arm-elf-readelf                     arm-none-linux-gnueabi-cpp
arm-elf-size                         arm-none-linux-gnueabi-ct-ng.config
arm-elf-strings                     arm-none-linux-gnueabi-g++
arm-elf-strip                        arm-none-linux-gnueabi-gcc
arm-elf-unprotoize                arm-none-linux-gnueabi-gcc-5.4.0
arm-linux-addr2line               arm-none-linux-gnueabi-gccbug
--More--

方法二:在终端里输入arm-linux-gcc-v,这个命令会显示arm-linux-gcc信息和版本,如果出现以下信息则表示安装成功


至此,安装已经全部完成!

你可能感兴趣的:(linux)