Re: m68k: main.c:(.init.text+0x730): undefined reference to`strlen'

From: Adrian Bunk
Date: Wed May 14 2008 - 11:32:49 EST


On Wed, May 14, 2008 at 04:28:24PM +0200, Andreas Schwab wrote:
> Adrian Bunk <bunk@xxxxxxxxxx> writes:
>
> > Or replace all the strlen stuff in include/asm-m68k/string.h with a
>
> I don't think the strlen macros has any influence in this case (it
> already uses __builtin_strlen anyway).

The problem is that it sets __HAVE_ARCH_STRLEN, and therefore the
out-of-line function in lib/string.c is not built.

That breaks when gcc replaces a call to a different function with a call
to strlen().

> I'd rather guess that gcc is
> expanding strncat internally to something involving strlen with
> non-constant argument,

We agree on this one.

> although I cannot see how that can happen from a
> quick look.

It isn't the first time we have these problems in the kernel...

> Andreas.

cu
Adrian

--

"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/