Robert P. J. Day wrote:
> i'm hoping i'm not abusing this list overly by asking for some help
> with debugging an OpenWRT issue. the trac ticket is here:
> and involves cross-compiling an image for the MIPS-based linksys
> WRT54GL router. i've verified that this error still exists in the
> latest svn update of openwrt and, in a nutshell, it involves the claim
> that "__builtin_ffs" is undefined:
> CC [M]
> warning: "__builtin_ffs" is not defined
> error: missing binary operator before token "("
> that line in the source file is simply:
> #if PUD_SHIFT
> i have no idea what the problem is here and, as you can see from the
> trac ticket, this seems to have started because of the kernel version
> upgrade from 2.6.22 to 2.6.23. but what about that would affect the
> usage of __builtin_ffs?
> does anyone have an idea why something this basic might be going
> wrong now? any suggestions appreciated. thanks.
The compiler should never attempt to use __builtin_ffs by itself, because
the kernel makefile adds -ffreestanding to CFLAGS. So either your compiler
is broken, or the makefile of your kernel tree is incorrect, or somewhere
in your kernel tree there's a explicit call to __builtin_ffs (which is
also incorrect, as the compiler may invoke library functions to implement