您的位置:首页 > 运维架构 > Linux

Ubuntu 16.04(64bit)嵌入式交叉编译环境搭建arm-linux-gcc使用

2017-10-28 10:56 941 查看
1.把压缩包arm-linux-gcc-4.5.1-v6-vfp-20101103.tgz放在一个文件夹下,然后在终端进入到该文件夹,将该压缩包解压到所需的目录下(我解压在了根目录下)



下面是tar命令的描述



2.然后改变环境变量,能使arm-linux-gcc能直接运行。

输入 gedit /root/.bashrc

然后在文件中加入

export PATH=”$PATH:/opt/FriendlyARM/toolschain/4.5.1”



3.重启系统或者登出账号在登入就能生效了,然后输入 arm-Linux-gcc -v 查看版本就能检测是否修改成功。然而64位的ubuntu下输入会显示无法找到该文件,因为64位下无法运行32位的,你需要安装32位运行库

输入 sudo apt-get install libc6:i386

再次查看就能显示信息



4.用gcc编译文件

进入到文件所在的目录下,用gcc编译文件()(bubble.c存在warning,可以用gbd调试)(-o:指定生成的输出文件)



如果尝试运行该程序,会显示



因为arm-linux-gcc是用于编译开发板下的程序,当然不能在PC机下运行,同样无法用gbd进行调试,只有用gcc编译才行(然后我傻傻夫夫的查这个原因查了好久)

5.如果新建一个文件下,将bubble.c移动到该文件下,那么你再次重新编译该文件,将会找不到该文件(类似于调用第三方函数库)



可以使用 -I命令用于指定文件位置



6.将bubble.c编译程动态链接库,用gcc再次连接



7.用-O1/-O2/-O3不同优化等级进行编译bubule.c 查看文件大小

然而因为程序太小了,所以无法进行优化(尴尬)

如果-g加入调试信息 ,文件就会变大

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: