Re: incremental compilation via shared library

pcg@aber.ac.uk (Piercarlo Grandi)
Tue, 21 Sep 1993 23:21:52 GMT

          From comp.compilers

Related articles
[4 earlier articles]
Re: incremental compilation via shared library assmann@prosun.first.gmd.de (1993-09-03)
Re: incremental compilation via shared library brett@digits.enet.dec.com (1993-09-07)
Re: incremental compilation via shared library pop@dcs.gla.ac.uk (pop) (1993-09-07)
Re: incremental compilation via shared library pcg@decb.aber.ac.uk (1993-09-11)
Re: incremental compilation via shared library tmb@arolla.idiap.ch (1993-09-20)
Re: incremental compilation via shared library brent@jade.ssd.csd.harris.com (1993-09-20)
Re: incremental compilation via shared library pcg@aber.ac.uk (1993-09-21)
Re: incremental compilation via shared library jeremy@suite.sw.oz.au (1993-09-22)
Re: incremental compilation via shared library gym@dcs.ed.ac.uk (Graham Matthews) (1993-09-22)
| List of all articles for this month |

Newsgroups: comp.compilers
From: pcg@aber.ac.uk (Piercarlo Grandi)
Keywords: linker, comment
Organization: Prifysgol Cymru, Aberystwyth
References: 93-08-104 93-09-066
Date: Tue, 21 Sep 1993 23:21:52 GMT

brent@jade.ssd.csd.harris.com (Brent Benson) said:
> I'm disappointed with the dynamic object file loader available in
> our SVR4 port. dlopen() will load a shared object file and
> resolve references to symbols in the original executable, but it
> will not resolve references to symbols in other shared objects
> that were loaded at run-time. Is this typical of SVR4 ports?
> What is the reason for this restriction?


Most probably because it does not keep a database of which other shared
objects were loaded and their symbol tables... Without having a
per-process area reserved to the dynamic loader where it can accumulate
state, it's hard to keep track of which objects have been dynamically
loaded and unloaded.


It can be done, but perhaps the SVR4 implementors decided that what they
provided was good enough for dynamically loading extensions to a main
program, which indeed largely is.


Multics does it, but then the Multics dynamic linker did keep state, and
in a privileged ring, and so on.
[For that matter, the OSF/1 loader keeps the full symbol table around all
the time, so dynamic linking comes essentially for free. -John]
--


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.