Hi Niels,

> Michael Tautschnig <[email protected]> writes:
> 
> > I'm not sure where such behaviour would be specified for a unix
> > linker!?
> 
> Not sure, either. It is described quite clearly in Levine's "Linkers and
> Loaders" (see sec 6.4). Which is recommended reading for anything
> linker-related.
> 

I'm sorry, I've only got the online version (from http://www.iecc.com/linker/)
at hand right now, which doesn't seem to have subsection numbers. Under which
heading would I find that information?

> I haven't tried checking posix specs, but I imagine it might be
> specified there.
> 

I don't think POSIX would say anything regarding the linker. The loader would be
part of the operating system maybe, but a linker is neither tied to the source
language nor the loader. It lives in a not terribly well specified space...

> > gcc  -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat 
> > -Werror=format-security -ggdb3 -Wall -W  -Wmissing-prototypes 
> > -Wmissing-declarations -Wstrict-prototypes  -Waggregate-return  
> > -Wpointer-arith -Wbad-function-cast -Wnested-externs  -Wl,-z,defs 
> > -Wl,--as-needed -Wl,-z,relro -o ex3 ex3.o ../libargp.a
> 
> I'm not entirely sure what the specified linker flags mean, but order
> looks correct. What was the error message, precisely?
> 

Well, the error is not raised by ld, but only by our research tool chain. I
don't think this is what you were looking for, but anyhow:

error: conflicting initializers for variable `c::argp_program_bug_address'
old value: &"<[email protected]>"[0]
Module: ex3
new value: NULL
Module: argp-ba

Best,
Michael

Attachment: pgp6jxlxpZPZ4.pgp
Description: PGP signature

Reply via email to