1、下载交叉编译软件压缩包
链接: https://pan.baidu.com/s/1ut0PuwTpC8wa2U30E7pqzg 提取码: mgb7
方法:Ⅰ:在命令行处利用wget命令下载
Ⅱ:利用vmtools的文件拖拽功能,在主机下载完成后拖拽至虚拟机系统中
2、选择一个地址进行解压我在/home/zhang/目录下新建了一个目录命名为ctool/ 并解压在此处(已事先将压缩包放至ctool/下)
zhang@zhang-virtual-machine:~$ tar -zxvf arm-linux-gcc-4.4.3.tar.gz
解压成功后会看到/opt/文件夹
zhang@zhang-virtual-machine:~$ ls
arm-linux-gcc-4.4.3.tar.gz opt
至此完成安装
3、设置环境变量(用来快速使用交叉编译器)
共有三种方法:
Ⅰ、全局:所有用户都可使用
Ⅱ、用户:仅当前登录用户可使用
Ⅲ、临时:仅在此终端有效,新打开一个终端无效(此处不写出来,自行百度)
Ⅰ、修改全局环境配置
修改此处,所有用户均可使用该交叉编译器
打开/etc/profile 系统全局配置文件
zhang@zhang-virtual-machine:~$ cd //回到根目录
zhang@zhang-virtual-machine:~$ sudo vim /etc/profile //打开文件
在文件末尾处添加:
export PATH=$PATH:/home/zhang/ctool/opt/FriendlyARM/toolschain/4.4.3/bin/
保存后执行profile文件
zhang@zhang-virtual-machine:~$ . /etc/profile //点+空格+文件名
Ⅱ、修改用户配置
修改此处,所作更改只对当前用户有用,即只有当前用户可以直接用 arm-none-linux-gnueabi-gcc hello.c -o hello
命令来编译hello.c文件
打开终端,输入:
zhang@zhang-virtual-machine:~$ vim ~/.bashrc
或
zhang@zhang-virtual-machine:~$ vim ~/.bash_profile
在文件末尾处添加
export PATH=$PATH:/home/zhang/ctool/opt/FriendlyARM/toolschain/4.4.3/bin/
保存并运行
. .bashrc //点+空格+文件名
或
. .bash_profile//点+空格+文件名
4、验证
如果书写正确,打开终端输入:
zhang@zhang-virtual-machine:~$ arm-none-linux-gnueabi-
然后按下TAB键,可以看到很多以arm-none-linux-gnueabi-开头的命令。如下:
root@zhang-virtual-machine:~# arm-none-linux-gnueabi-
arm-none-linux-gnueabi-addr2line arm-none-linux-gnueabi-gcov
arm-none-linux-gnueabi-ar arm-none-linux-gnueabi-gprof
arm-none-linux-gnueabi-as arm-none-linux-gnueabi-ld
arm-none-linux-gnueabi-c++ arm-none-linux-gnueabi-nm
arm-none-linux-gnueabi-cc arm-none-linux-gnueabi-objcopy
arm-none-linux-gnueabi-c++filt arm-none-linux-gnueabi-objdump
arm-none-linux-gnueabi-cpp arm-none-linux-gnueabi-populate
arm-none-linux-gnueabi-ct-ng.config arm-none-linux-gnueabi-ranlib
arm-none-linux-gnueabi-g++ arm-none-linux-gnueabi-readelf
arm-none-linux-gnueabi-gcc arm-none-linux-gnueabi-size
arm-none-linux-gnueabi-gcc-4.4.3 arm-none-linux-gnueabi-strings
arm-none-linux-gnueabi-gccbug arm-none-linux-gnueabi-strip
5、验证是否安装成功
执行:
zhang@zhang-virtual-machine:~$ arm-none-linux-gnueabi-gcc
成功:
得到:
.arm-none-linux-gnueabi-gcc: no input files
失败:
得到:
/home/zhang/ctool/opt/FriendlyARM/toolschain/4.4.3/bin/arm-none-linux-gnueabi-gcc: 15: exec: /home/zhang/ctool/opt/FriendlyARM/toolschain/4.4.3/bin/.arm-none-linux-gnueabi-gcc: not found
解决办法:
注意:arm-linux-gcc-4.4.3.tar.gz 是32 bit ,如果 系统是Ubuntu32 bit,那么就可以看到已经成功了,会显示arm-linux-gcc 的版本信息。但如果Ubuntu 64 bit,就会显示错误:
/home/zhang/ctool/opt/FriendlyARM/toolschain/4.4.3/bin/arm-none-linux-gnueabi-gcc:
15: exec:
/home/zhang/ctool/opt/FriendlyARM/toolschain/4.4.3/bin/.arm-none-linux-gnueabi-gcc:
not found
这是因为64 bit的Ubuntu系统缺少32 bit的库,需要安装。Ubuntu12.04 64 bit以后的版本就没有32位的库。
执行:
apt-get install libc6:i386
apt-get install lib32ncurses5
apt-get install lib32z1
然后再重复步骤5,就能看到结果了!!!
7、重启
最好在此处进行一次重启
zhang@zhang-virtual-machine:~$ reboot
如果重启之后输入
zhang@zhang-virtual-machine:~$ arm-linux-gcc -v
没有版本信息,而是提示
“没有该命令”
则重复一下步骤3