I'm trying to build the crazyflie firmware with the default Fedora 20 arm-none-eabi toolchain, as its my preferred Linux environment. It is based on the Codesourcery 2013.11-24 release. It compiles successfully but installing the resulting cflie.bin on the crazyflie itself doesn't work: it just sits there flickering the red led and doesn't talk on the radio.
I can successfully reflash with the stock firmware, and I can build from source in the vm version of the toolchain.
Any pointers on how I can go about debugging this? I'm guessing the problem is one or more of
- linker is generating a bad image
- gcc is generating instructions for the wrong architecture by default
- something in the C code is undefined and the newer compiler is generating different non-working code