[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [microblaze-uclinux] uclinux memory exhausted, unable to allocate RAM



John,

As you requested, I add the -v flag to the linking process. The screen capture is reproduced here. Please notice that mb-elf2flt is not invoked during the linking process. However, I pass the -Wl,-elf2flt option to the linker. Please let me know if this screen capture helps you to figure out anything.

Rgds,
Victor Yeo
-----------------------------------------------------------------------
Linking target Wed Jun 27 11:56:15 EDT 2007 ...
Reading specs from /opt/petalinux-v0.10-rc1/tools/linux-i386/microblaze-uclinux-tools/bin/../lib/gcc/microblaze-uclinux/3.4.1/specs
Configured with: /mnt/home/jwilliam/PetaLogix/microblaze-toolchain-sources/srcs/gcc/configure --target=microblaze-uclinux --prefix=/mnt/home/jwilliam/PetaLogix/microblaze-toolchain-sources/microblaze-uclinux-tools --enable-languages=c,c++ --enable-multilib --enable-target-optspace --with-gnu-ld --disable-nls --disable-__cxa_atexit --disable-c99 --disable-clocale --disable-c-mbchar --disable-long-long --enable-threads=posix --enable-cxx-flags=-D_ISOC99_SOURCE -D_BSD_SOURCE
Thread model: posix
gcc version 3.4.1 ( Xilinx EDK 8.1.01 Build EDK_I.19.4 080506 )
 /opt/petalinux-v0.10-rc1/tools/linux-i386/microblaze-uclinux-tools/bin/../libexec/gcc/microblaze-uclinux/3.4.1/cc1plus -quiet -v -Isrc/zlib -Ipkg/ieee1588/ptpUtil -Ipkg/ieee1588/ptpCore -Ipkg/ieee1588/ptpHw -Ipkg/ieee1588/ieee1588App -Ipkg/ieee1588 -Ipkg/ieee1588/LxiDemoKit -Isrc/include -Isrc/1451dot1/include -Ipkg -Isrc/misc -Ipkg -Ipkg/.. -Ipkg/custom -Ipkg/examples -Ipkg/linux -Ipkg/test -Ipkg/util -Isrc -Isrc/include -Isrc/sdk -Isrc/DmcOs -iprefix /opt/petalinux-v0.10-rc1/tools/linux-i386/microblaze-uclinux-tools/bin/../lib/gcc/microblaze-uclinux/3.4.1/ -isystem /opt/petalinux-v0.10-rc1/tools/linux-i386/microblaze-uclinux-tools/bin/include -D__LANGUAGE_C -D_LANGUAGE_C -DLANGUAGE_C -DDEFAULT_ROOT_DIR=. -DFIRMWARE_REVISION=B.05.01 -DDMC_SERIAL_MAX_COM_PORTS=8 -DNO_QSOCK -DDMC_MALLOC_DEBUG -D_REENTRANT -DINCLUDE_APPS -DINCLUDE_1451DOT1 -DINCLUDE_1451DOT2 -DINCLUDE_WEB -DINCLUDE_HTTP_SERVER -Dmicroblaze=microblaze -DPROJECT=microblaze -DTIMESTAMP=20070627115615 -DRELOC= src/startup/link_info.cpp -mxl-soft-mul -mxl-soft-div -msoft-float -quiet -dumpbase link_info.cpp -msoft-float -auxbase link_info -g -O -Wall -version -fno-implicit-templates -fno-exceptions -fno-rtti -o /tmp/ccOinaBe.s
ignoring nonexistent directory "/opt/petalinux-v0.10-rc1/tools/linux-i386/microblaze-uclinux-tools/bin/include"
ignoring nonexistent directory "/opt/petalinux-v0.10-rc1/tools/linux-i386/microblaze-uclinux-tools/bin/../lib/gcc/microblaze-uclinux/3.4.1/../../../../microblaze-uclinux/sys-include"
ignoring nonexistent directory "/mnt/home/jwilliam/PetaLogix/microblaze-toolchain-sources/microblaze-uclinux-tools/include/c++/3.4.1"
ignoring nonexistent directory "/mnt/home/jwilliam/PetaLogix/microblaze-toolchain-sources/microblaze-uclinux-tools/include/c++/3.4.1/microblaze-uclinux"
ignoring nonexistent directory "/mnt/home/jwilliam/PetaLogix/microblaze-toolchain-sources/microblaze-uclinux-tools/include/c++/3.4.1/backward"
ignoring nonexistent directory "/mnt/home/jwilliam/PetaLogix/microblaze-toolchain-sources/microblaze-uclinux-tools/lib/gcc/microblaze-uclinux/3.4.1/include"
ignoring nonexistent directory "/mnt/home/jwilliam/PetaLogix/microblaze-toolchain-sources/microblaze-uclinux-tools/microblaze-uclinux/sys-include"
ignoring nonexistent directory "/mnt/home/jwilliam/PetaLogix/microblaze-toolchain-sources/microblaze-uclinux-tools/microblaze-uclinux/include"
ignoring duplicate directory "pkg"
ignoring duplicate directory "src/include"
#include "..." search starts here:
#include <...> search starts here:
 src/zlib
 pkg/ieee1588/ptpUtil
 pkg/ieee1588/ptpCore
 pkg/ieee1588/ptpHw
 pkg/ieee1588/ieee1588App
 pkg/ieee1588
 pkg/ieee1588/LxiDemoKit
 src/include
 src/1451dot1/include
 pkg
 src/misc
 pkg/..
 pkg/custom
 pkg/examples
 pkg/linux
 pkg/test
 pkg/util
 src
 src/sdk
 src/DmcOs
 /opt/petalinux-v0.10-rc1/tools/linux-i386/microblaze-uclinux-tools/bin/../lib/gcc/microblaze-uclinux/3.4.1/../../../../include/c++/3.4.1
 /opt/petalinux-v0.10-rc1/tools/linux-i386/microblaze-uclinux-tools/bin/../lib/gcc/microblaze-uclinux/3.4.1/../../../../include/c++/3.4.1/microblaze-uclinux
 /opt/petalinux-v0.10-rc1/tools/linux-i386/microblaze-uclinux-tools/bin/../lib/gcc/microblaze-uclinux/3.4.1/../../../../include/c++/3.4.1/backward
 /opt/petalinux-v0.10-rc1/tools/linux-i386/microblaze-uclinux-tools/bin/../lib/gcc/microblaze-uclinux/3.4.1/include
 /opt/petalinux-v0.10-rc1/tools/linux-i386/microblaze-uclinux-tools/bin/../lib/gcc/microblaze-uclinux/3.4.1/../../../../microblaze-uclinux/include
End of search list.
GNU C++ version 3.4.1 ( Xilinx EDK 8.1.01 Build EDK_I.19.4 080506 ) (microblaze-uclinux)
	compiled by GNU C version 3.2.3 20030502 (Red Hat Linux 3.2.3-54).
GGC heuristics: --param ggc-min-expand=64 --param ggc-min-heapsize=64467
<command line>:15:1: warning: "microblaze" redefined
<built-in>:66:1: warning: this is the location of the previous definition
 /opt/petalinux-v0.10-rc1/tools/linux-i386/microblaze-uclinux-tools/bin/../lib/gcc/microblaze-uclinux/3.4.1/../../../../microblaze-uclinux/bin/as --traditional-format -o /tmp/ccXrY7cl.o /tmp/ccOinaBe.s
 /opt/petalinux-v0.10-rc1/tools/linux-i386/microblaze-uclinux-tools/bin/../libexec/gcc/microblaze-uclinux/3.4.1/collect2 -relax -N -o microblaze-target /opt/petalinux-v0.10-rc1/tools/linux-i386/microblaze-uclinux-tools/bin/../lib/gcc/microblaze-uclinux/3.4.1/../../../../microblaze-uclinux/lib/crt0.o /opt/petalinux-v0.10-rc1/tools/linux-i386/microblaze-uclinux-tools/bin/../lib/gcc/microblaze-uclinux/3.4.1/crti.o /opt/petalinux-v0.10-rc1/tools/linux-i386/microblaze-uclinux-tools/bin/../lib/gcc/microblaze-uclinux/3.4.1/crtbegin.o -Llib-microblaze -Llib-microblaze -L/opt/petalinux-v0.10-rc1/tools/linux-i386/microblaze-uclinux-tools/bin -L/opt/petalinux-v0.10-rc1/tools/linux-i386/microblaze-uclinux-tools/bin/../lib/gcc/microblaze-uclinux/3.4.1 -L/opt/petalinux-v0.10-rc1/tools/linux-i386/microblaze-uclinux-tools/bin/../lib/gcc -L/opt/petalinux-v0.10-rc1/tools/linux-i386/microblaze-uclinux-tools/bin/../lib/gcc/microblaze-uclinux/3.4.1/../../../../microblaze-uclinux/lib lib-microblaze/DmcConfigP1000Linux.o lib-microblaze/uxMain.o lib-microblaze/DmcInit.o lib-microblaze/InitOrder.o lib-microblaze/runonce.o lib-microblaze/DmcError.o lib-microblaze/DmcReadWriteIO.o lib-microblaze/DmcFileIO.o lib-microblaze/DmcHashTable.o lib-microblaze/crc32.o lib-microblaze/regex.o lib-microblaze/revision.o lib-microblaze/DmcHook.o lib-microblaze/DmcConfig.o 
........<object files>................
lib-microblaze/templates.o lib-microblaze/DmcModuleInit.o /tmp/ccXrY7cl.o -Map lib-microblaze/target.map -elf2flt -lpthread -lm -lpthread -lstdc++ -lm -lgcc -elf2flt -lc -lgcc /opt/petalinux-v0.10-rc1/tools/linux-i386/microblaze-uclinux-tools/bin/../lib/gcc/microblaze-uclinux/3.4.1/crtend.o /opt/petalinux-v0.10-rc1/tools/linux-i386/microblaze-uclinux-tools/bin/../lib/gcc/microblaze-uclinux/3.4.1/crtn.o
Link Done Wed Jun 27 11:56:34 EDT 2007
Building microblaze.tar
microblaze-uclinux-strip: microblaze/microblaze: File format not recognized
Complete




-----Original Message-----
From: owner-microblaze-uclinux@xxxxxxxxxxxxxx [mailto:owner-microblaze-uclinux@xxxxxxxxxxxxxx] On Behalf Of John Williams
Sent: Tuesday, June 26, 2007 8:10 AM
To: microblaze-uclinux@xxxxxxxxxxxxxx
Subject: Re: [microblaze-uclinux] uclinux memory exhausted, unable to allocate RAM

Hi Victor,

victor-sv_yeo@xxxxxxxxxxx wrote:

> John wrote:
> 
>>Can you please add the line
>>
>>FLTFLAGS += -v
>>
>>to your user app Makefile, then clean it and rebuild?
>>
>>Part of of the output from make when building your app will be the 
>>verbose (-v) data from elf2flt.  Please extract that from the log and 
>>post it to the list.
> 
> 
> I did not use mb-elf2flt in my compilation. After compilation, I get this microblaze-target which gives:

You did use elf2flt in your compilation, you just don't realise it 
because the tools hide it from you :)

> [root@patricios nodefw]# mb-flthdr microblaze-target
> microblaze-target
>     Magic:        bFLT
>     Rev:          4
>     Build Date:   Fri Jun 22 19:05:14 2007
>     Entry:        0x44
>     Data Start:   0x143260
>     Data End:     0x1a4570
>     BSS End:      0x269d20
>     Stack Size:   0x1000
>     Reloc Start:  0x1a4570
>     Reloc Count:  0x4761
>     Flags:        0x1 ( Load-to-Ram )
> 
> As you see, microblaze-target is not an elf file. 

Indeed.

Do i generate elf file and then use mb-elf2flt?

The tools do this for you.   Thus my request for you to add -v (verbose) 
to the FLTFLAGS variable.  This tells elf2flt to spit out a bunch of 
useful information when it does its magic.  That useful information will 
help me to help you figure out why you got an invalid reloc in your flat 
binary.

Regards,

John
___________________________
microblaze-uclinux mailing list
microblaze-uclinux@xxxxxxxxxxxxxx
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/


___________________________
microblaze-uclinux mailing list
microblaze-uclinux@xxxxxxxxxxxxxx
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/