建立交叉编译环境
目的不在如何实现交叉编译工具配置及编译,主要记录一些过程中遇到的一些问题。
这是开始啦
环境:Ununtu16.04
-
首先我们需要有交叉编译器工具,分享:
链接:https://pan.baidu.com/s/1IhNVt_6lgCAMzwmDlfyoug
提取码:lisa -
解压缩交叉编译器工具:记得将压缩包拖至虚拟机中。进入所在目录(我放在桌面),解压命令:tar xvzf arm-linux-gcc-4.5.1-v6-vfp-20101103.tgz -C /
(注意:C 后面有个空格,并且 C 是大写的,它是英文单词“Change”的第一个字母,在此是改变目录的意思。)
出现:Canno mkdir:Permission denied,其实是目录权限的问题,而且后面会在root权限下进行,所以先进入root权限下吧
-
进入root权限:命令:#su -
(输入口令)
其实会报错
我是选择切换到普通用户下进行
提示su: Authentication failure,只要sudo passwd root过一次后,下次再su -的时候只要输入密码就可以成功登录了。(对,若不切换到自己的用户下,sudo时可能会报错)
然后解压命令:执行该命令,将把 arm-linux-gcc 安装到/opt/FriendlyARM/toolschain/4.5.1 目录 -
!!!注意64位Ubuntu是不能支持32位编译器工具,需要下载库
命令如下:#sudo apt-get install lib32ncurses5
#apt-get install lib32z1 -
把编译器路径加入系统环境变量,运行命令:
#gedit /root/.bashrc
编辑/root/.bashrc 文件,注意“bashrc”前面有一个“.”,修改最后一行为 export PATH=$PATH:/opt/FriendlyARM/toolschain/4.5.1/bin,注意路径一定要写对,否则将不会有效,保存退出。可能会出现如下情况,注意只是警告,可以不用管
- 更新一下环境变量:#source ~/.bashrc
- 在命令行输入:#arm-linux-gcc –v
(可能出现:arm-linux-gcc:command not found,查询后可能是没下载支持32位的库,但我已经下载过,大概是前一天下载后就关了shell,所以重新输入#sudo apt-get install lib32ncurses5
#apt-get install lib32z1,更新变量后,验证一下是否成功安装,成功如下图
至此结束,可能有点乱,因为是已经做好后再写的,遇到的问题记得有点混乱。