Subject: Re: ld.elf_so heads up.
To: None <erh@nimenees.com>
From: Simon Burge <simonb@netbsd.org>
List: current-users
Date: 04/16/2000 13:21:18
erh@nimenees.com wrote:
> I made some changes to the elf dynamic loader to set __progname
> and environ before library init sections get called. I am also changing
> crt0 on elf platforms to set these only if linked statically. Because of
> this, make sure that, if you install the new crt0, you BUILD AND INSTALL A
> NEW LD.ELF_SO before trying to build dynamically linked binaries.
> "make build" does the right thing.
>
> Also, the changes to crt0 were nearly identical across all elf ports,
> but I only have i386 and alpha to test on. If you have any of:
> m68k, mips, powerpc, sh3, sparc, sparc64, vax
> please check if it works correctly. I have a couple test programs at
> ftp://ftp.netbsd.org/pub/NetBSD/misc/erh/ld_crt0_test.tgz
This with the updated ld.elf_so on mips, but I don't see any recent
changes to lib/csu??
g++ -c a.c
g++ -shared lib.c -o libtest.so
g++ -o a.out a.o -L. -Wl,-rpath,. -ltest
gcc -o static_test -DXTYPE=\"static\" static_test.c
gcc -o dynamic_test -DXTYPE=\"dynamic\" static_test.c
lib: __progname:0x10000000
lib: environ:0x100000d8
lib: a.out
lib: simonb
main: __progname:0x10000000
main: environ:0x100000d8
main: a.out
main: simonb
====> lib: and main: lines should match
static: progname:static_test
static: environ:0x7fffe714
static: USER:simonb
dynamic: progname:dynamic_test
dynamic: environ:0x7fffe714
dynamic: USER:simonb
====> static: and dynamic: lines should match
Simon.