Hi..

Currently I've been looking into the Makefile of $(TOPDIR)
At final build stage, gnu linker links all objects and produce
the u-boot by the following Makefile target rule:

u-boot: depend $(SUBDIRS) $(OBJS) $(LIBS) $(LDSCRIPT)
            UNDEF_SYM=`$(OBJDUMP) -x $(LIBS) | sed  -n -e
              's/.*\(__u_boot_cmd_.*\)/-u\1/p'|sort|uniq`;\
            $(LD) $(LDFLAGS) $$UNDEF_SYM $(OBJS) \
               --start-group $(LIBS) $(PLATFORM_LIBS) --end-group \
               -Map u-boot.map -o u-boot

The value of $(LDFLAGS) variable ends "-n" and UNDEF_SYM is undefined symbol
name list.  Can the undefined symbol names be the non-option argument of gnu ld?
According to manual page or info, I haven't found any mention of it.

Do I misunderstand at some point about usage of ld?
And what usage is the undefined symbols?  For what are they useful?
If anyone have a answer please let me know.

Thanks.


Get your own 200MB free email at http://www.empal.com