Re: ARM undefined symbols. Again.

Russell King
2005-02-09T10:41:05Z

On Tue, Feb 08, 2005 at 08:05:01PM +0000, Russell King wrote:
> On Tue, Feb 08, 2005 at 08:42:43PM +0100, Sam Ravnborg wrote:
> > On Mon, Feb 07, 2005 at 11:43:59AM +0000, Russell King wrote:
> > >
> > > Maybe we need an architecture hook or something for post-processing
> > > vmlinux?
> > Makes sense.
> > For now arm can provide an arm specific cmd_vmlinux__ like um does.
> >
> > The ?= used in Makefile snippet below allows an ARCH to override the
> > definition of quiet_cmd_vmlinux__ and cmd_vmlinux__
>
> Great - I'll merge your previous idea with this one and throw a patch
> here.

Well, this was a great idea until you find that this is also used for
linking the intermediate vmlinux objects for kallsyms, and kallsyms
uses weak (== undefined) symbols:

LD .tmp_vmlinux1
.tmp_vmlinux1: error: undefined symbol(s) found:
w kallsyms_addresses
w kallsyms_markers
w kallsyms_names
w kallsyms_num_syms
w kallsyms_token_index
w kallsyms_token_table

Maybe kallsyms needs to provide an empty object with these symbols
defined for the first linker pass, instead of using weak symbols?

--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 PCMCIA - http://pcmcia.arm.linux.org.uk/
2.6 Serial core