Messages in this thread | | | Date | Wed, 14 May 2008 19:48:01 +0400 | From | Cyrill Gorcunov <> | Subject | Re: m68k: main.c:(.init.text+0x730): undefined reference to `strlen' |
| |
[Adrian Bunk - Wed, May 14, 2008 at 06:30:59PM +0300] | On Wed, May 14, 2008 at 04:28:24PM +0200, Andreas Schwab wrote: | > Adrian Bunk <bunk@kernel.org> 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 | |
Adrian, I've just sent the updated patch, and accidentally forget to CC you - please take a look on http://lkml.org/lkml/2008/5/14/267
- Cyrill -
| |