交叉编译mips(ubuntu)

使用buildroot进行交叉编译,网上的教程很多,按照教程一步一步就OK了。主要记录几个遇到的问题。

mips & gdb

http://md.purpleroc.com/cross%20compile/embedded%20tools/technic/2015/09/07/Cross_compile.html

设置环境变量

http://jingyan.baidu.com/article/db55b609a3f6274ba30a2fb8.html

在低版本的编译过程中,有可能出现这样的错误:

make menuconfig出错

make[1]: Leaving directory `/home/router/buildroot/support/kconfig‘

make: *** [/home/router/buildroot/output/build/buildroot-config/mconf] Error 2

错误原因:ncurses是字符终端下屏幕控制的基本库。可能很多新开发的程序已经不再使用。编译一些老的程序,还是会经常碰到。

解决:

在make menuconfig之前加上:

sudo apt-get install libncurses5-dev

参考:https://www.oschina.net/question/938191_2142882

当本机是kernel2.6的时候,使用buildroot2016.08编译的时候出错。错误如下:

package/linux-headers/linux-headers.mk:137: *** LINUX_HEADERS_SITE cannot be empty when LINUX_HEADER

因为找不到相应的header,我这里是在buildroot2016.08中编译kernel为2.6的时候出错。

猜测

原因是因为相应的kernel header找不到。

在toolchain中选择内核时,会列举一部分,也可以手动选择。猜测,列举的部分是buildroot已经包含,而手动选择会需要去进行下载,可能是通过linux的渠道(我这里是ubuntu,猜测是ubuntu的源)。

而现在是 2.6可能已经不包含在以前的下载路径中(我在使用sudo apt-cache search linux-image搜索内核时找不到2.6的内核),而我在ubuntu14.04(kernel为3.13),手动选择为3.13时make没有出现该错。

解决

选择一个低版本的buildroot,我这里选择的是2011.08

https://buildroot.org/downloads/

时间: 2024-10-17 07:32:07

交叉编译mips(ubuntu)的相关文章

libcurl 支持 openssl 交叉编译 mips rt5350

By admin | 11月18日 0 Comment Advertisement 历经半个月终于把libcurl库编译出来,参考网上很多博客,最终把自己要的库编译出来. 首先说明一下,我要这个库的目的.我在RT5350上跑openWRT需要向服务器提交数据,用http协议,且需要ssl加密.经过网上查找只有libcurl合适,于是我用mipsel-openwrt-linux-gcc开始交叉编译libcurl, 开始的时候一直在CSDN下载 libcurl的源代码包,版本不一样里面Makefil

LINUX主机上交叉编译树莓派详细教程

LINUX主机OS:Ubuntu14.04 64位,运行在wmware workstation 10上. 树莓派版本:raspberry pi 2 B型. 树莓派OS:官网下的的raspbian-jessie. 1.为什么需要交叉编译 在Ubuntu上直接编译一个.c源文件可以用系统自带的gcc编译器编译test.c gcc test.c -o test 然后执行生成的二进制文件 ./test 交叉编译就是把编译的过程在LINUX PC(或其它主机)上执行,然后拷贝二进制可执行文件到树莓派(或其

Ubuntu 19.04 正式发布

Ubuntu 19.04 版于日前正式发布,代号「Disco Dingo」,中文翻译为“舞动的灵犬”(非官方).这一版本的支持周期是九个月,结束于 2020 年 1 月. 这一版本的 Ubuntu 由 Linux 5.0 版内核驱动,默认工具链已迁移至 glibc 2.29 / gcc 8.3.新的桌面版搭载了 GNOME 3.32 版,带来了效能提升以及分数倍缩放(GNOME 此前默认仅支持整数倍缩放)等特性改进. 关于名称 Disco 这个词其实既是名词又是动词,常常指一种派对或者聚会,人们

net-snmp5.7.3移植到arm-linux平台

net-snmp5.7.3移植到arm-linux平台 本次交叉编译在ubuntu 15.04 64位系统下进行. 准备工作 在编译移植前有几项准备工作需要完成. 1下载net-snmp 5.7.3源码包 2安装交叉编译环境(arm-linux-gnueabi-gcc) 使用命令sudo apt-get install gcc-arm-linux-gnueabi安装即可. 编译配置 解压net-snmp源码包,然后进入源码包目录 unzip net-snmp-5.7.3.zip cd net-s

五一之起一台服务器玩玩-花生壳配置

不要下载3.0,还有桌面要求啊,神tm我都改了/etc/inittab的开机启动项为init 3了. 花生壳3.0下载页面有经典版下载,是个冗杂包.选择自己适配的版本就行了,别像我那64的安装了半天...一看系统是i386,很绝望啊-.- 用ftp上传.如果你不会请看我的另一篇ftp配置吧centos6.5-vsftp搭建.tar -zxvf phddns...........忘了,反正你直接tab就行了 启动phddns....?什么因为没有/usr/sbin/phddns文件?那直接移动过去

Windows下将ImageMagick移植到Android平台

Windows下将ImageMagick移植到Android平台 原文链接  http://www.pedant.cn/2014/06/18/imagemagick-ported-android/ ImageMagick是一个用来创建.编辑.合成图片的软件.它可以读取.转换.写入多种格式的图片.在移动平台做一些较复杂的图像处理时,难免会请出这尊大神.官方网站上也说明了它可以运行在多个平台之上,包括Android.不过官方的Releases版本只有Unix.Mac OS X.IOS.Windows

苹果系统Mac OSX用花生壳phddns

苹果系统Mac OSX用花生壳phddns 博客分类: 苹果系统 Mac OSX gcc程序 Linux 刚刚修改了一下花生壳的文件,介绍给大家方法 1. 下载花生壳文件phddns-2.0.3.16858.tar.gz 这个文件是花生壳官方的linux版 重新编译OSX版 附件有编译好的phddns-2.0.3.16858-osx.tar.bz2 中有一个phddns文件夹可以有简单设定 2. 你的系统要有xcode喽 tar xzvf phddns-2.0.3.16858.tar.gz cd

《net-snmp5.7.3移植到arm-linux平台》

net-snmp5.7.3移植到arm-linux平台 本次交叉编译在ubuntu 15.04 64位系统下进行. 准备工作 在编译移植前有几项准备工作需要完成. 1下载net-snmp 5.7.3源码包 2安装交叉编译环境(arm-linux-gnueabi-gcc) 使用命令sudo apt-get install gcc-arm-linux-gnueabi安装即可. 编译配置 解压net-snmp源码包,然后进入源码包目录 unzip net-snmp-5.7.3.zip cd net-s

2017-2018-1 20155314 《信息安全系统设计基础》第13周学习总结

2017-2018-1 20155314 <信息安全系统设计基础>第13周学习总结 学习目标 找出全书你认为最重要的一章,深入重新学习一下,要求(期末占10分): 完成这一章所有习题 详细总结本章要点 给你的结对学习搭档讲解你的总结并获取反馈 第6章学习要点: 了解常见的存储技术(RAM.ROM.磁盘.固态硬盘等) 理解局部性原理 理解缓存思想 理解局部性原理和缓存思想在存储层次结构中的应用 高速缓存的原理和应用 本章要点详细总结 第6章 存储器层次结构 6.1 存储技术 6.1.1 随机访问