基于MIPS处理器的交叉编译环境如何建立啊?

congwen11 2006-03-07 05:14:20
第一次接触MIPS处理器的Linux开发,现在还没上手。我用板子用的ADM5120P的处理器,AMD的AM29LV320的flash。现在想要编译内核和应用程序,但是交叉编译环境不知道怎样建立。MIPS版的Linux内核源码已经有了,还有以下这些东西:
toolchain-20020423-1.i386.rpm
toolchain-i386-20020423-1.i386.rpm
toolchain-mips-20020423-1.i386.rpm
toolchain-mipsel-20020423-1.i386.rpm
还有一个mipsel-linux-uclibc文件夹
现在我装了这四个rpm包。然后在/export/tools/bin 目录下找到了mipsel-linux-gcc这个程序,这应该是mips版的gcc吧。之后就进行不下去了。哪位知道下面如何设置交叉编译环境啊?或者有详细的设置文档能否给我发一份,我在教育网,上google搜出来的那些国外网站不方便。多谢啦。我的邮箱:congwen@gmail.com


另外,我在一台windows平台的PC机上运行了tftp服务端的程序,假设该PC的IP为:192.168.1.2,从普通的linux机器上用#tftp 192.168.1.2 就可以tftp到这台PC上。我的mips板子用串口通过超级终端连到这台windows平台pc上,再用一个交叉线连接PC的网口和板子的网口,在超级终端上ping PC的IP可以通,但是在超级终端上用#tftp 192.168.1.2 却无法连上。
显示如下:
#tftp 192.168.1.2
BusyBox v1.00-pre7 (2004.06.03-05:30+0000) multi-cal binary

Usage: tftp [OPTION]... HOST [PORT]
#
这是为什么?还要设置什么吗?
...全文
801 点赞 收藏 6
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
congwen11 2006-03-09
多谢以上几位啦,另外,哪位知道这个uclibc-0.9.19-adm5120.tar.gz是做什么用的啊?或是要怎么安装?
回复
pyh 2006-03-08
这是建立arm交叉编译时的环境,照着做就行了
change to root user
cd /usr/local
tar zxvf usr-local-arm-kernel-headers-030528.tar.gz
tar zxvf usr-local-arm-gcc-030528.tar.gz
edit /etc/ld.so.conf and put /usr/local/lib at the top
run ldconfig -v
prepend /usr/local/bin, /usr/local/arm/bin, /usr/local/qtopia/bin, /usr/local/arm/qtopia/bin directories to PATH(vi /root/.bash_profile)
回复
yzx1983 2006-03-08
tftp应该是没有保持连接概念的,它的连接始于文件传输请求,终止于文件传输结束或出错。
通常tftp命令都是类似于以下格式
tftp [transition mode] [get/put] host source_file_name [dest_file_name]
这样一次性处理文件传输,而不是像ftp那样可以先连接到主机,权限许可时还可以list看看有什么文件在服务器上等各种操作。

win和busybox的tftp属于以上两种原始方式。
linux的tftp客户端看起来比较强,模拟ftp连接的样式,实际上并不是真正地可以先连接远端服务器,只是在本地存储了相关信息(远端服务器地址),在get/put文件时才真正地发起一个连接请求。你可以尝试在linux下tftp一个并不存在地主机,然后用status命令看看,它会显示已经连接成功,证明这不过是虚假信息而已。
回复
zqz_joshua 2006-03-08
对tftp,我猜
(1)他只支持板子上的tftp 作server,不作client;
(2)端口号不对(???)
回复
yzx1983 2006-03-08
makefile里应该有让你配变量××prefix的选项,是不是make config记不清了。总之需要把这个prefix配置为"mipsel-linux-"

此外可能还需要在环境变量PATH里添加mipsel-linux-gcc所在的路径



你那个busy box的tftp我还不知道,不过看起来像是命令格式不正确。
回复
robinswan 2006-03-07
ucLibc 的 toolchain 是我至今为止找到的最完善的 toolchain.

http://www.uclibc.org/toolchains.html

仔细看一下吧。
回复
相关推荐
发帖
Linux_Kernel
创建于2007-08-27

4155

社区成员

Linux/Unix社区 内核源代码研究区
申请成为版主
帖子事件
创建了帖子
2006-03-07 05:14
社区公告
暂无公告