Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 23 Oct 1998 21:58:20 +0000 (GMT)
From:      Terry Lambert <tlambert@primenet.com>
To:        jin@portnoy.lbl.gov (Jin Guojun)
Cc:        jdp@polstra.com, hackers@FreeBSD.ORG
Subject:   Re: ld for loading dynamic library changed in 3.0-RELEASE?
Message-ID:  <199810232158.OAA07507@usr07.primenet.com>
In-Reply-To: <199810232100.OAA08835@portnoy.lbl.gov> from "Jin Guojun" at Oct 23, 98 02:00:37 pm

next in thread | previous in thread | raw e-mail | index | archive | help
> > Shared libraries are fundamentally different
> > from archive libraries.  With an archive library, the linker only
> > loads those members (.o files) that are actually used.  But a shared
> > library is monolithic.  You either load all of it or you load none
> > of it.  That means you aren't allowed to have undefined symbols at
> > link time, even from portions of the shared library that you're not
> > actually using.

Actually, it's generally switchable as to whether or not you
force the export of the unreferenced symbol space, or not, as
a link-time option.

I think the 2.9.1(?) ld has this feature...


> The ld works exactly as other platforms, like Solaris (ELF), SunOS4 (not ELF),
> FreeBSD 2.x (aout), without such a problem.	If you argue this is aout bug,
> I think the idea is wrong. All ELF system as I know, such as Solaris, Linux,
> work are same as non-ELF system, except FreeBSD 3.0.	Therefore, it is 
> FreeBSD 3.0 elf problem. Unless you believe every body else is wrong.

Everyone else is wrong, but so is FreeBSD.  See my other posting on
expectation of use of shared object technology, and the implications
of "broken".  For one type of application, a.out is right and ELF is
wrong.  For another, ELF is right and a.out is wrong.  For a third, both
ELF and a.out are wrong.


					Terry Lambert
					terry@lambert.org
---
Any opinions in this posting are my own and not those of my present
or previous employers.

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199810232158.OAA07507>