Re: Etherboot 5.5

Timothy Legge <[email protected]>
Newsgroups gmane.network.etherboot.devel
Message-ID <[email protected]>
--- Michael Brown <[email protected]> wrote:

> > $ make bin/e1000.dsk
> > ld -N  -T arch/i386/scripts/i386.lds  -u
> obj_dskprefix --defsym 
> > check_obj_dskprefix=obj_dskprefix   -u obj_e1000
> --defsym 
> > check_obj_e1000=obj_e1000   -u obj_config --defsym
> 
> > check_obj_config=obj_config   bin/blib.a -o
> bin/e1000.dsk.tmp \
> >         -Map bin/e1000.dsk.tmp.map
> > ld: internal error ../../ld/ldlang.c 1974
> > make: *** [bin/e1000.dsk.tmp] Error 1
> > 
> > $ ld -v
> > GNU ld version 2.15
> > 
> > Do I need a newer version?


I have the same ld version on Ubuntu and the same
error.

> Shouldn't do; I'm using 2.13.90.0.18.
> 
> This error occurs in the following portion of code
> in ldlang.c:
> 
>   /* Return the iteration when the definition of
> NAME was last updated.  A
>      value of -1 means that the symbol is not
> defined in the linker script
>      or the command line, but may be defined in the
> linker symbol table.  */
> 
>   int
>   lang_symbol_definition_iteration (const char
> *name)
>   {
>     struct lang_definedness_hash_entry *defentry
>       = (struct lang_definedness_hash_entry *)
>       bfd_hash_lookup (&lang_definedness_table,
> name, FALSE, FALSE);
> 
>     /* We've already created this one on the
> presence of DEFINED in the
>        script, so it can't be NULL unless something
> is borked elsewhere in
>        the code.  */
>     if (defentry == NULL)
> =====>  FAIL (); <======
> 
>     return defentry->iteration;
>   }
> 
> 
> So, it looks as though something is borked in ld. 
> You could try the 
> attached patch to arch/i386/scripts/i386.lds, which
> temporarily removes 
> all uses of DEFINED() in the linker script.  If this
> fixes the problem, 
> then we're closer to identifying what's wrong with
> ld.

Worked for me, but I have not tried to boott the
resulting disk image.

Tim


-------------------------------------------------------
This SF.Net email is sponsored by Oracle Space Sweepstakes
Want to be the first software developer in space?
Enter now for the Oracle Space Sweepstakes!
http://ads.osdn.com/?ad_id=7412&alloc_id=16344&op=click
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.