Date: Mon, 14 Nov 1994 09:45:07 -0500 (CDT) From: Aaron Ucko Subject: Re: Shared libraries To: dj AT stealth DOT ctron DOT com Cc: djgpp AT sun DOT soe DOT clarkson DOT edu Organization: Rockhurst College; Kansas City, MO >> My understanding of the situation is that the only thing keeping DJGPP >> from normally using shared libraries is global variables accessed by >> both the libraries and your program. Couldn't this be remedied by >> adding some sort of hook to the startup code to automatically export any >> desired global variables? Or is the only legal startup code to be found >> in (g)crt0.o? Just wondering... > >The biggest problem is that once the program is built and stripped, >you don't know *where* the variables are - strip removes that >information. Ouch. Hmmm. How about some sort of (don't tell the FSF :-) ) #pragma? How do other systems handle this sort of thing? > >The other big problem is that shared libraries are normally loaded by >the OS, and ms-dos is still the OS in this case. To use shared >libraries, each program would have to have the loader linked into it, >which is almost as much space as the library itself. > Why not build something like that into DJGPP 2.0? Have the stub launch a loader which exits after loading the libraries? --- Aaron Ucko (ucko AT vax1 DOT rockhurst DOT edu; finger for PGP public key) -=- httyp! -=*=-Just because you're paranoid doesn't mean they aren't out to get you.-=*=- Geek code 2.1 [finger hayden AT vax1 DOT mankato DOT msus DOT edu for explanation]: GCS/M/S d(-) H s g+ p? !au a-- w+ v+ C++(+++)>++++ U-(S+)>++++ P+ L>++ 3(-) E-(----) !N>++ K- W(--) M-(--) V(--) po-(--) Y+(++) t(+) !5 j R G tv--(-) b+++ !D(--) B--(---) e>++++(*) u++(@) h!() f(+) r-(--)>+++ n+(-) y?