[U-Boot] ppc_4xx-objcopy is eating my RAM
Jerry Van Baren
gerald.vanbaren at ge.com
Thu Oct 29 22:16:04 CET 2009
alan A. A wrote:
> Hi,
>
> when i try to build u-boot 1.3.2, i get the following error:
>
>
> make[1]: Leaving directory `/home/ctech/ppc/package/usr/src/u-boot-1.3.2/board/CT/lx411s'
> UNDEF_SYM=`ppc_4xx-objdump -x lib_generic/libgeneric.a board/CT/lx411s/liblx411s.a cpu/ppc4xx/libppc4xx.a lib_ppc/libppc.a fs/cramfs/libcramfs.a fs/fat/libfat.a fs/fdos/libfdos.a fs/jffs2/libjffs2.a fs/reiserfs/libreiserfs.a fs/ext2/libext2fs.a net/libnet.a disk/libdisk.a drivers/bios_emulator/libatibiosemu.a drivers/block/libblock.a drivers/dma/libdma.a drivers/hwmon/libhwmon.a drivers/i2c/libi2c.a drivers/input/libinput.a drivers/misc/libmisc.a drivers/mtd/libmtd.a drivers/mtd/nand/libnand.a drivers/mtd/nand_legacy/libnand_legacy.a drivers/mtd/onenand/libonenand.a drivers/net/libnet.a drivers/net/sk98lin/libsk98lin.a drivers/pci/libpci.a drivers/pcmcia/libpcmcia.a drivers/spi/libspi.a drivers/rtc/librtc.a drivers/serial/libserial.a drivers/usb/libusb.a drivers/video/libvideo.a post/libpost.a post/drivers/libpostdrivers.a post/lib_ppc/libpostppc.a post/lib_ppc/fpu/libpostppcfpu.a post/cpu/ppc4xx/libpostppc4xx.a common/libcommon.a common/jpeg/libjpeg.a libfdt/libfdt.a api/
libapi.a |sed -n -e 's/.*\(__u_boot_cmd_.*\)/-u\1/p'|sort|uniq`;\
> cd /home/ctech/ppc/package/usr/src/u-boot-1.3.2 && ppc_4xx-ld -Bstatic -T /home/ctech/ppc/package/usr/src/u-boot-1.3.2/board/CT/lx411s/u-boot.lds -n -Ttext 0xfffd0000 $UNDEF_SYM cpu/ppc4xx/start.o cpu/ppc4xx/resetvec.o \
> --start-group lib_generic/libgeneric.a board/CT/lx411s/liblx411s.a cpu/ppc4xx/libppc4xx.a lib_ppc/libppc.a fs/cramfs/libcramfs.a fs/fat/libfat.a fs/fdos/libfdos.a fs/jffs2/libjffs2.a fs/reiserfs/libreiserfs.a fs/ext2/libext2fs.a net/libnet.a disk/libdisk.a drivers/bios_emulator/libatibiosemu.a drivers/block/libblock.a drivers/dma/libdma.a drivers/hwmon/libhwmon.a drivers/i2c/libi2c.a drivers/input/libinput.a drivers/misc/libmisc.a drivers/mtd/libmtd.a drivers/mtd/nand/libnand.a drivers/mtd/nand_legacy/libnand_legacy.a drivers/mtd/onenand/libonenand.a drivers/net/libnet.a drivers/net/sk98lin/libsk98lin.a drivers/pci/libpci.a drivers/pcmcia/libpcmcia.a drivers/spi/libspi.a drivers/rtc/librtc.a drivers/serial/libserial.a drivers/usb/libusb.a drivers/video/libvideo.a post/libpost.a post/drivers/libpostdrivers.a post/lib_ppc/libpostppc.a post/lib_ppc/fpu/libpostppcfpu.a post/cpu/ppc4xx/libpostppc4xx.a common/libcommon.a common/jpeg/libjpeg.a libfdt/libfdt.a api/libapi.a --en
d-group -L /home/ctech/ppc/package/usr/bin/../lib/gcc/powerpc-linux/4.2.2/pic -lgcc \
> -Map u-boot.map -o u-boot
>
> ppc_4xx-objcopy --gap-fill=0xff -O srec u-boot u-boot.srec
> ppc_4xx-objcopy: u-boot.srec: Bad value
> ^Cmake: *** Deleting file `u-boot.srec'
> make: *** [u-boot.srec] Interrupt
>
> if i do not interrupt it, it eats all of RAM and Swapfile. I do not know what is causing this error.
> Any ideas?
You have a LARGE hole in your memory map (something is linked at the
start of memory and something is linked at the end of memory) and
objdump is merrily filling it with 0xFF. You are probably creating a
4GB output file that is nearly all 0xFF.
Use ${CROSS_COMPILE}objdump -h on your .elf file to see where things are
located, then fix your memory map.
gvb
More information about the U-Boot
mailing list