树莓派配置交叉编译环境
来源:互联网 发布:淘宝网在哪里买基金 编辑:程序博客网 时间:2024/06/05 19:53
树莓派是arm的处理器,而我们使用的服务器、pc都是X86架构的处理器,CPU的指令集有很大差别,在pc环境下编译的程序无法直接运行,而且树莓派相对而言性能没pc那么强劲,所以在树莓派上编译大段代码就很吃力,我曾经就试过在树莓派上编译内核代码,结果整整一天都没编译完。而且树莓派没有内核头,程序也不能直接编译,so搭建一个树莓派交叉编译环境就很有必要了。本来在这学期开始我就试过在我的虚拟机上搭建交叉编译环境,但是但是我们学校的校园网用的802.1X认证,真是蛋疼,这个认证不允许网卡分享网络,(只要小米wifi写了一个程序,通过电脑端口转发数据)所以虚拟机也上不了网,没办法配置。直到昨天买了一个服务器,我就把它当我的虚拟机用。
配置环境:ubuntu12.4
首先下载树莓派交叉编译工具:https://github.com/raspberrypi/tools,可以用这个工具下wget https://github.com/raspberrypi/tools网速感人,我用服务器下到哭,以前下了好几个小时,今天本来想把资料上传到百度云,结果一直失败,过几天补上来吧。(好啦,上传到百度云了,共享出来:链接:http://pan.baidu.com/s/1gecrTYF)
然后,把代码解压出来,这个是使用zip大包,所以用unzip tools.zip,如果你机器上没有的话就下一个unzip:sudo apt-get install unzip;
再把文件移动到/usr/下:sudo mv tools /usr/
添加环境变量:
$vim ~/.bashrc 在文件的末尾加上: export PATH=$PATH:/usr/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin $source .bashrc
进行测试:显示交叉编译工具的版本信息arm-linux-gnueabihf-gcc -v
然后,写一个测试程序
vim a.c
然后把下面代码粘贴进去#include <unistd.h>#include <stdlib.h>#include <stdio.h>int main(){ if((write(1, "here is some data\n", 18)) != 18) write(2, "A write error has occurred on file descriptor 1\n", 46); printf("hello word!\n"); //exit(0); return 0;}
然后编译了两份,一份是共服务器自带的gcc编译的,一份是交叉编译工具编译的
编译过程参照上图,然后把交叉环境编译的拷到树莓派内,效果如下,(hello是服务器gcc编译的,是X86平台的,所以无法运行)
至此,大功告成
- 树莓派配置交叉编译环境
- 配置交叉编译环境
- 配置交叉编译环境
- 交叉编译环境配置
- 配置交叉编译环境
- (三)树莓派交叉编译环境配置
- arm_linux 交叉编译环境配置
- linux 交叉编译环境配置
- ubuntu交叉编译环境配置
- sqlite3 配置交叉编译环境
- Nachos交叉编译环境配置
- sqlite3交叉编译环境配置
- 配置linux交叉编译环境
- 交叉编译,配置eclipse编译环境
- Arm-Linux(树莓派)交叉编译环境的配置
- arm-linux交叉编译环境的配置
- ubuntu9.10 成功配置 交叉编译环境
- ubuntu9.10 成功配置 交叉编译环境
- ostep02--The Abstraction:The Process
- c++ 对象的复制与赋值
- android 点击Edittext时hint值不自动隐藏问题
- Android退出所有Activity最优雅的方式
- GIT - 日常操作(1)
- 树莓派配置交叉编译环境
- android头像设置:从本地照片库或拍照获取并剪裁
- CodeForces 609B The Best Gift
- 浅谈ClickableSpan , 实现TextView文本某一部分文字的点击响应
- ios开发 只让播放视频的 时候能够全屏横屏 其他全部非全屏非横屏
- Python在IDLE环境下常用快捷键
- DNS知识点
- Android线程管理——线程通信
- 安卓下拉刷新解决方案