社区
系统维护与使用区
帖子详情
snapgear的arm-linux-tools工具链为什么编译出来的程序都是小头的
bekars
2007-10-31 06:42:31
从snapgear的网站下载了arm-linux-tools-20061213.tar.gz,编译程序总是小头模式little-endian,如果加上-mbig-endian可以编译大头模式,但是像编译busybox就很麻烦,请问如何才能使编译出来的程序是大头模式?
...全文
206
1
打赏
收藏
snapgear的arm-linux-tools工具链为什么编译出来的程序都是小头的
从snapgear的网站下载了arm-linux-tools-20061213.tar.gz,编译程序总是小头模式little-endian,如果加上-mbig-endian可以编译大头模式,但是像编译busybox就很麻烦,请问如何才能使编译出来的程序是大头模式?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hefuhua
2007-11-01
打赏
举报
回复
修改Makefile..
没有找到简便的方法
arm
-elf-
tools
-20040427
linux
下的
arm
编译
工具
。下载
arm
-elf-
tools
-20040427.tar.gz包,解压,得到一个usr文件夹,复制该文件夹的内容到根目录下的相应文件夹下,就OK啦,在终端下执行
arm
-elf-gcc会显示: Reading specs from /usr/local/lib/gcc-lib/
arm
-elf/2.95.3/specs gcc version 2.95.3 20010315 (release)(ColdFire patches - 20010318 from http://fiddes.net/coldfire/)(uC
linux
XIP and shared lib patches from http://www.
snapg
ear
.com/)
romfs.2.0.x.gz
uC
linux
in the GDB/
ARM
ulator Here are some patches to GDB to allow the existing gdb
ARM
emulator to run uC
linux
targets. It can run both little-endian and big-endian code, as well as apcs-32/26 code and Thumb. I have tested little/big endian kernels but haven't played with thumb at this point. The patch is heavily based on an
ARM
7100 patch that Ben Williamson produced back around 1999 for gdb-4.18. The changes include Atmel AT91 emulation for timers/system registers and serial ports, removal of Bens LCD support and porting to gdb-5.0. News Dec 2002 Many thanks to Yu Chen who has sent in build instructions for Cygwin targets. He has also provided precompiled binaries that can be extracted from "/". Nov 2002 Fernando José Cardozo de Sá has been kind enough to send in his Win32 native port of the
ARM
ulator. All the files needed are in the Win32 directory. The Win32 binaries work just like the unix versions, check the section below on Running the precompiled binaries. Fixed the 'ls'/'ps' problem with big-endian targets by stealing a small bit of the patch provided by Daniel Versick's (http://mac.os.nctu.edu.tw/distfiles/4530.patch). More of this patch may be required I just haven't had time to digest it all. Jan 2006 Wow an update :-) Needed to implement the IPR (Interrupt Pending Register) in order to work with a bug fix pending for the 2.4.x kernel. Mar 2007 Here's a patch to fix problems compiling the
arm
ulator on newer systems (invalid lvalue error). What you get Here are some files you can use to put together uC
linux
running in the GDB/
ARM
ulator. gdb-5.0.tar.bz2 The orginal gdb-5.0 archive. gdb-5.0-uc
linux
-
arm
ulator-20060104.patch.gz Patches against gdb-5.0 based heavily on the
ARM
ulator changes from Ben Williamson
with changes to behave like an Atmel AT91 device. uC
linux
-dist-20020927.patch.gz The changes you will need to fix GDB/
ARM
ulator-BE support in the 20020927 distro, specifically 'ps' and 'ls'. Big endian support is not as stable as the little endian GDB/
ARM
ulator target and is only recommended if you really want to play with a big-endian system. uC
linux
-20020701-20020816.patch.gz The changes you will need to make XIP (execute in place) and big-endian targets work with the 20020701 distro. Choose the GDB/
ARM
ulator-EB to build big-endian kernels and apps. Choose GDB/
ARM
ulator for little endian targets.
linux
.2.0.x.gz
linux
.2.4.x.gz A precompiled uC
linux
kernel binaries that you can run in the emulator. romfs.2.0.x.gz romfs.2.4.x.gz romfs images to use with the above kernels.
linux
.2.0.x-xip.gz
linux
.2.4.x-xip.gz A precompiled uC
linux
kernel binaries with XIP support that you can run in the emulator. romfs.2.0.x-xip.gz romfs.2.4.x-xip.gz romfs images to use with the above kernels. Applications are XIP. example-session.txt An example session in the debugger. Building the Debugger/Emulator bunzip2 < gdb-5.0.tar.bz2 | tar xvf - gunzip < gdb-5.0-uc
linux
-
arm
ulator-20060104.patch.gz | patch -p0 cd gdb-5.0 ./configure --target=
arm
-elf make su root -c "make install" Running the precompiled binaries The
ARM
ulator expects the romfs to be in a file called "boot.rom". You must use the matching kernel/romfs combo's. gunzip romfs.2.0.x gunzip
linux
.2.0.x ln -s romfs.2.0.x boot.rom
arm
-elf-gdb
linux
-2.0.x ... gdb> target sim ... gdb> load ... gdb> run And likewise for 2.4, just change the names. Checkout the example-session.txt file to see what it looks like. Using the Debugger Just type ^C to drop into gdb. There are no symbols in the binaries provided above, but if you build your own your will have full source debugging of the kernel (and apps if you load their symbols appropriately). You can step and continue just like a normal debugger. Building from Source If you are using an older uC
linux
distro, just apply the patch and see how you go. Anything more recent than the patches mention will include the GDB/
ARM
ulator target by default with the patches included. You can get the source from: http://www.uc
linux
.org/pub/uC
linux
/dist/ Be sure to check for any patches above that are required for the version you download. You can get the
tools
from: http://www.uc
linux
.org/pub/uC
linux
/
arm
-elf-
tools
/ Build as for any other target, the images above were built with uC-libc. When building from source, create a file in the top directory called ".gdbinit" that contains: target sim load to save some typing ;-) Then link the romfs.img to boot.rom with: ln -s images/romfs.img boot.rom and run
arm
-elf-gdb
linux
-2.X.X/
linux
to have full source debug of the kernel and friends. Messing with the Emulator If you want to see how much of a hack this really is, the main files to look at are: gdb-5.0/sim/
arm
/
arm
mem.c gdb-5.0/sim/
arm
/
arm
io.c These still include the old 7100 code commented out and the Atmel emulation that is truly hacked in on top. You can add more memory and change the size of the rom in
arm
mem.c. You can fix most bugs in the emulation in
arm
io.c. Thanks to Patrick Doyle for the time.h patch to fixcompiling on RedHat 7.2/7.3 Fernando José Cardozo de Sá for his Native 32 port (and binaries). Daniel Versick's big-endian patches for uaccess (taken from http://mac.os.nctu.edu.tw/distfiles/4530.patch). Copyright (C) 2002,2005 David McCullough
snapg
ear
.com>
IXP425开发板使用手册 V5.3(最新版)
CTDB-IXP425 软件版本更新说明 V5.32 2007-04-04 日发布 更正V5.3 中一些路径的小bug,将mkfs.jffs2 和genext2fs 放到压缩包中。压缩包文件名 为ixp425-V5.32-2007-04-05.tar.bz2,
编译
方法按V5.3 的进行。 V5.3 2007-03-09 日发布 将所有源文件从/hq 目录移到/ixp425 目录下,将分散的redboot、
snapg
ear
、gcc 等分 散的源
程序
压缩包,整合到一个ixp425-V5.3-2007-03-09.tar.bz2 压缩文件中,并简化系 统的
编译
过程。
RedBoot用户手册
RedBoot用户手册,详细讲解reboot知识,很全面的,下载吧
elf2flt:ELF至bFLT(二进制平面)转换器,用于无mmu
Linux
目标
elf2flt 版权所有(C)2001-2003,
SnapG
ear
( )David McCullough Greg Ungerer 这是GNU公共许可证v2或更高版本下的免费软件。 有关更多详细信息,请参见 。 Elf2flt具有PIC,ZFLAT和完整的重定位支持。 当前支持的目标包括:m68k / ColdFire,
ARM
,Sparc,NEC v850,MicroBlaze,h8300,SuperH和Blackfin。
编译
中 您需要为目标建立一个适当的libbfd.a和libiberty.a。 它们通常是binutils软件包的一部分。 要
编译
elf2flt,请执行以下操作: ./configure --target=
--with-libbfd=
--with-libiberty=
make make
系统维护与使用区
19,615
社区成员
74,562
社区内容
发帖
与我相关
我的任务
系统维护与使用区
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
复制链接
扫一扫
分享
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章