费了九牛二虎之力,终于把MIPS交叉编译环境搭建好了。接下来跟大家分享一下这篇文章,里面的方法是我亲自试过的,绝对好用。谢谢写这篇文章的博主。
MIPS是一个RISC的处理器体系结构,与之类似的还有x86,arm等,今天我们介绍如何在Ubuntu下搭建MIPS交叉编译环境:
1.下载:
在 http://buildroot.uclibc.org/downloads/snapshots/buildroot-snapshot.tar.bz2 下载buildroot:
tar -jxvf buildroot-snapshot.tar.bz2
cd buildroot
2.配置buildroot:
make clean
make menuconfig
会出现和编译Linux类似的菜单选择界面,如下图:

选择第一项“Target Architecture”,改成MIPS(little endian),如下图:

另外,选择“Toolchain”,务必将“Kernel Headers”的Linux版本改成你自己主机的Linux版本(因为我们编译出的MIPS交叉工具是需要在我们的主机上运行的),如下图,我的主机是Ubuntu 11.04的,Linux版本是2.6.38-8:

3.编译:
注意:
1.编译过程中必须联网,因为会下载一些压缩包存放在buildroot/dl文件夹下,比如binutils、gcc等!如下图:

2.必须事先安装好bison、flex、texinfo、ncurses等,比如我第一次编译,出现如下错误,因为我没有安装texinfo:
sudo apt-get install texinfo 就可以了:

之后就是漫长的等待了,差不多1个小时。。。
4.
编译完成后,在buildroot文件夹下多了一个output文件夹,其中就是编译好的文件:
cd buildroot/output/host/usr/bin
我们发现了mips的交叉编译工具已经生成啦~~:

5.
另外,在buildroot/output/target文件夹下,我们发现这就是我们之前选择的Linux 2.6.36-8版的busybox!如下图:

我们用file命令查看其中的某个可执行文件,如下:

我们看到,生成的文件确实是MIPS平台的,在我的x86下是无法运行的。
6.
为了以后方便使用,我们直接将其中的bin文件夹添加到环境变量中,省得我们日后输入长长的路径了。
将路径添加到~/.bashrc文件中,然后运行source命令:
source ~/.bashrc
具体请参考:http://blog.youkuaiyun.com/xiaoguaihai/article/details/8766448
以上转自:http://blog.youkuaiyun.com/xiaoguaihai/article/details/8766394
以下转自:http://www.linuxidc.com/Linux/2012-04/58746.htm
如果 make menuconfig 报错如下:
*** Unable to find the ncurses libraries or the
*** required header files.
*** 'make menuconfig' requires the ncurses libraries.
***
*** Install ncurses (ncurses-devel) and try again.
***
make[1]: *** [scripts/kconfig/dochecklxdialog] 错误 1
make: *** [menuconfig] 错误 2
上述错误是说,执行make menuconfig 命令需要安装ncurses-dev
解决方案:
在命令行中输入:
sudo apt-get install libncurses5-dev
make menuconfig
Ncurses是一个能提供功能键定义(快捷键),屏幕绘制以及基于文本终端的图形互动功能的动态库。
这就不难解释为何执行make menuconfig命令需要ncurses了。
Ncurses是一个能提供基于文本终端窗口功能的动态库. Ncurses可以:
只要您喜欢,您可以使用整个屏幕
创建和管理一个窗口
使用8种不同的彩色
为您的程序提供鼠标支持
使用键盘上的功能键
Ncurses可以在任何遵循ANSI/POSIX标准的UNIX系统上运行,除此之外,它还可以从系统数据库中检测终端的属性, 并且自动进行调整,提供一个不受终端约束的接口.因此,Ncurses可以在不同的系统平台和不同的终端上工作的非常好。
本文详细介绍了在Ubuntu系统中搭建MIPS交叉编译环境的全过程,包括下载、配置、编译及生成交叉编译工具和busybox的过程。提供了完整的步骤和注意事项,确保读者能够顺利实现目标。
4024

被折叠的 条评论
为什么被折叠?



