uClibc fails to build for ARM architecture (clone.S:115 error)...

Alex Pilafian sikanrong at gmail.com
Wed Nov 9 04:28:27 UTC 2011


Hi All,

I was trying to cross-compile uClibc for my embedded ARM project
today, and I ran into an error here:

libc/sysdeps/linux/arm/clone.S:115: Error: thumb conditional instruction
should be in IT block -- `ldmnefd sp!,{r4}'

I was able to get around this by changing the file clone.S such that
the ldmnefd mnemonic is in the IT block (making it a THUMB-only
instruction, too).

@So, just change this:

        ldmnefd sp!, {r4}
        IT(t, ne)
#if defined(__USE_BX__)
        bxne    lr
#else
        movne   pc, lr
#endif

@Into this:

        IT(tt, ne)
        ldmnefd sp!, {r4}
#if defined(__USE_BX__)
        bxne    lr
#else
        movne   pc, lr
#endif

...and the rest of uClibc will compile normally. Hopefully this saves
someone some headache :)

//Alex


More information about the uClibc mailing list