Rockbox Development > Starting Development and Compiling
Another Fuze question (gcc version)
UnFleshed One:
Does gcc version matter?
I compiled arm-elf-gcc 4.1.1 (lowest version available on gnuarm.org) from source and then used that to compile bootloader, created dual boot using mkamsboot and put that on my 4Gb Fuze v1 and caused firmware upgrade.
At least part of the process went right, because I can boot into OF by holding left. Connecting USB uses OF as normal.
So I built rockbox (selected (N)ormal on configure, then make and make zip), got 2.7 Mb archive and extracted .rockbox on the root of my player.
But I can't boot into rockbox at all. Fuze won't turn on at all (no screen/led activity) unless I hold left button to boot into OF.
I tried few things: formatting internal disk on windows, placing .rockbox on SD card (4Gb micro SD HC), rebuilding and reflashing bootloader and rockbox, etc.
My working copy is straight checkout on revision 21314, no patches applied.
Host OS is FC6, host compiler is gcc 4.1.2, arm-elf-gcc is 4.1.1. Both bootloader and rockbox compiled without any problems (just have to make clean after bootloader). mkamsboot was compiled from its own makefile.
I feel like I'm either missing some obvious step, or I am lucky the thing isn't bricked yet :).
So should I heed config's warning and find arm gcc 4.0.3 and rebuild everything, or should I look in another direction?
Thanks.
Llorean:
You're supposed to use the versions recommended on our wiki pages (or better yet, use our script to set up the right GCC and binutils version for you) just like for any other Rockbox target.
Seriously, "should I heed config's warning?" You didn't think it was just put there for fun, did you? Different GCC versions can have startlingly varying results, and the people developing the software are using the specific version of GCC we mention in the wiki.
Why didn't you start with the version you're supposed to be using?
UnFleshed One:
Well, it warned about build problems of which I had none. I guess I'm too used to C++ where it is rare to have subtle but breaking differences that will actually compile and link, so I used first arm gcc version I found. (I see how it can be very different for low level C code).
I'll try proper way tomorrow, thanks.
Yes:
Did you follow the Linux compiling guide? If you run tools/rockboxdev.sh it'll compile the correct versions of the necessary programs, then run export PATH="usr/local/arm-elf/bin:$PATH". That'll tell bash to use the versions of the gcc that rockboxdev.sh just compiled instead of whatever you've already got installed, and then you can compile Rockbox using all the recommended programs and versions.
saratoga:
Rockbox is somewhat different because it interacts directly with hardware, rather then just running on a software platform provided by an OS. Small changes in compiler behavior can have very negative effects on rockbox.
Navigation
[0] Message Index
[#] Next page
Go to full version