欢迎来到天天文库
浏览记录
ID:8821384
大小:21.50 KB
页数:2页
时间:2018-04-08
《嵌入式linux中建立交叉编译环境》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、建立交叉编译环境交叉编译的任务主要是在一个平台上生成可以在另一个平台上执行的程序代码。不同的CPU需要有不同的编译器,交叉编译如同翻译一样,它可以把相同的程序代码翻译成不同的CPU对应语言。交叉编译器完整的安装涉及到多个软件安装,最重要的有binutils、gcc、glibc三个。其中,binutils主要用于生成一些辅助工具;gcc则用来生成交叉编译器,主要生成arm-linux-gcc交叉编译工具;glibc主要是提供用户程序所使用的一些基本的函数库。自行搭建交叉编译环境通常比较复杂,而且很容易出错。可
2、以使用厂家提供的交叉编译器,只需将交叉编译器解压到根目录下即可(厂家已经做好这步)。步骤:设置系统环境变量:在linuxshell终端输入如下命令exportPATH=$PATH:/usr/local/arm/arm-2009q3/bin/这样,内核或其他应用程序均可以用arm-none-linux-gnueabi-来指定使用该交叉编译器。自行编写一个程序测试:示例helloworld.c:#includeintmain(void){printf("helloworld");retur
3、n0;}然后在命令行执行如下语句开始编译:$arm-none-linux-gnueabi-gcchelloworld.c-ohelloarm用file命令查看下生成的helloworld程序的格式:$filehelloarm如果输出以下信息,说明编译成功。helloworld:ELF32-bitLSBexecuteable,ARM,version1,dynamicallylinked(usessharedlibs),notstripped注:如果使用如下的命令来编译该文件。n[root@localhostr
4、oot]#gcc–ohellohelloworld.cn[root@localhostroot]#filehellohelloworld:ELF32-bitLSBexecuteable,Intel80386,version1,dynamicallylinked(usessharedlibs),notstripped可发现是80386格式,可以在虚拟机中直接./hello运行而用arm-none-linux-gnueabi-gcc编译的helloarm程序,是无法在虚拟机里用./helloarm执行的,但可以
5、在ARM开发板中运行。
此文档下载收益归作者所有