Rockbox Development > Starting Development and Compiling

Undefined Reference Issue while compiling

(1/3) > >>

srawat_itpro:
Hi RockBoxers,

This is my first post and I'm looking for the resolution of an issue which is bugging me while compiling RockBox

The details are:
Dev Platform: Cygwin on Windows
Dev Tools : GCC 3.3.6 & GLIBC 2.3.2
Target Platform : Motorola EZX (unsupported ARM-LINUX)

I've done all the source changes required for my target. I'm able to compile everything successfully (see make result attached). But always getting some Undefined reference issue which I'm unable to comprehend. I'm using SDL library with RockBox and it seems some symbols are missing. I'm not sure why?

Attached is my MakeFile, conf-file and the result of make.

Any help/pointer in this regard would be helpful.
Note: Have tried excessive googling but found nothing helpful.

Rgds
Sandeep

Domonoky:

please try a "make V=1" this should give you a build output with much more Info. Especially the complete commands which are given to gcc and ld, so you can check if it really points to the right sdl lib.

Another question: This sdl library, has it been crosscompiled for your target ? Maybe something got wrong there, and thats why its missing this symbols ?

srawat_itpro:
Hi Domonoky,

Thanks for replying so quickly. You actually provided me a pointer.

I file'd one of my .o files and got this.

$ file sysfont.o
sysfont.o: ELF 32-bit LSB relocatable, ARM, version 1, not stripped


then I went into my SDL lib path, i.e. /usr/local/lib and then used ar to extract all .o files in libSDL.a. After doing this I file'd one of them and got this..

$ file SDL.o
SDL.o: MS Windows COFF Intel 80386 object file

Now ... is it that my library file objects in MS Window compat format but the actual so in ARM compat format? Pardon my question but you see I'm not a regular developer but just an enthusiast who want to port RockBox to my Motrola mobile phone...

Is their any place where I can readily downloadable and usable SDL libs?

Thanks & Rgds
Sandeep

Domonoky:
So the problem is, that your SDL isnt build for arm. So thats why it wont link together..

I dont if there is a ready made SDL lib for Target availiable. You have to search google for this :-)

srawat_itpro:
Got them here... http://www.crosscompile.org/static/pages/SDL.html  :)

Thanks Your pointer helped..
doing the make now... lets see what happens

Thanks & Rgds
Sandeep

Ooopppsss..my big mouth.... got this in the end


--- Quote ---/opt/crosstool/gcc-3.3.6-glibc-2.3.2/arm-linux/lib/gcc-lib/arm-linux/3.3.6/../../../../arm-linux/bin/ld: ERROR: /opt/external_packages/lib/libSDL.so uses FPA instructions, whereas /work/rockbox/rockbox-20090307/build/rockbox.ezxe6 does not
/opt/crosstool/gcc-3.3.6-glibc-2.3.2/arm-linux/lib/gcc-lib/arm-linux/3.3.6/../../../../arm-linux/bin/ld: ERROR: /opt/external_packages/lib/libSDL.so uses hardware FP, whereas /work/rockbox/rockbox-20090307/build/rockbox.ezxe6 uses software FP
/opt/crosstool/gcc-3.3.6-glibc-2.3.2/arm-linux/lib/gcc-lib/arm-linux/3.3.6/../../../../arm-linux/bin/ld: failed to merge target specific data of file /opt/external_packages/lib/libSDL.so
/opt/crosstool/gcc-3.3.6-glibc-2.3.2/arm-linux/lib/gcc-lib/arm-linux/3.3.6/../../../../arm-linux/lib/crt1.o(.text+0x30): In function `_start':
: undefined reference to `main'
--- End quote ---

Any idea what is the issue here??

Rgds
Sandeep

Navigation

[0] Message Index

[#] Next page

Go to full version