Ubuntu16.4构建交叉编译环境

前端之家收集整理的这篇文章主要介绍了Ubuntu16.4构建交叉编译环境前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

Ubuntu16.4构建交叉编译环境

安装步骤:

1.下载安装文件

@H_403_17@下载arm-Linux-gcc-4.4.3.tar.gz

@H_403_17@http://download.csdn.net/detail/mybelief321/5563837

2.解压

@H_403_17@文件解压到指定目录:本文解压到:~/arm/下

@H_403_17@建议对文件的权限进行修改

@H_403_17@

3.配置系统环境变量(添加交叉编译环境的工具链路径)

@H_403_17@进入到~/目录,对目录下的.bashrc文件进行修改,最后一行加入

@H_403_17@export PATH=$PATH:/home/fxq/arm/arm-linux-gcc-4.3.3/bin

@H_403_17@具体的视具体情况而定,编写保存即可。

@H_403_17@执行命令:source .bashrc 使环境变量生效。

@H_403_17@

@H_403_17@Ubuntu不同目录下profile与bashrc的区别:

@H_403_17@/etc/profile文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行,并从/etc/profile.d目录的配置文件中搜集shell的设置。

@H_403_17@/etc/bash.bashrc为每一个运行bash shell的用户执行此文件,当bash shell被打开时,该文件被读取。

@H_403_17@~/.bash_profile每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次,默认情况下,他设置一些环境变量,执行用户的.bashrc文件

@H_403_17@~/.bashrc文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,51); font-family:Arial">@H_403_17@~/.bash_logout当每次退出系统(退出bash shell)时,执行该文件

@H_403_17@另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是"父子"关系。

@H_403_17@~/.bash_profile是交互式、login 方式进入 bash 运行的。

@H_403_17@~/.bashrc是交互式 non-login 方式进入 bash 运行的。

@H_403_17@通常二者设置大致相同,所以通常前者会调用后者。

@H_403_17@

4.检查环境变量是否设置成功

@H_403_17@在终端上输入命令 arm-linux 再按Tab键,可以看到下图,说明环境变量设置成功了

@H_403_17@

@H_403_17@

5.安装32位库兼容包

@H_403_17@终端输入版本测试命令出现下列错误的原因是:系统是ubuntu的64位系统,因此我们需要安装一些32位的库

@H_403_17@

@H_403_17@执行:sudo apt-get install lib32ncurses5 lib32z1

@H_403_17@

@H_403_17@待安装完32位的库之后,再使用命令:arm-linux-gcc -v,这一次就成功了,如下图

@H_403_17@

6.验证

@H_403_17@编写一个简单的hello.c文件进行验证:

@H_403_17@

  1. #include<stdio.h>
  2. int main()
  3. {
  4. printf("hello world!\n");
  5. }
使用命令:arm-linux-gcc hello.c -o hello 看是否编译成功,若出现以下错误

@H_403_17@

@H_403_17@解决方案:sudo apt-get install lib32stdc++6 libstdc++6 再进行编译即生成了二进制文件

@H_403_17@

参考@H_403_17@:

@H_403_17@http://blog.csdn.net/xie0812/article/details/52672687http://blog.csdn.net/xie0812/article/details/52672687

@H_403_17@http://fx114.net/qa-27-230767.aspx

猜你在找的Ubuntu相关文章