From: Thomas Knudsen Newsgroups: comp.os.msdos.djgpp Subject: Re: Making Libraries Date: Mon, 6 Jul 1998 09:48:52 +0200 Organization: News Server at UNI-C, Danish Computing Centre for Research and Education. Lines: 49 Message-ID: References: NNTP-Posting-Host: geb.gfy.ku.dk Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII In-Reply-To: To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Precedence: bulk On Sun, 5 Jul 1998, Eli Zaretskii wrote: > > As for the shared libraries, the situation you describe is an ideal > one, where the shared libraries serve a coherent set of programs > maintained by a single team. > > In a less ideal situation, such as the one which exists with Windows > programs, the different and incompatible versions of the same DLLs > make an enormous mess, and are one of the main causes for frequent > crashes of end-user machines. If you want to be sure your programs > will not crash and burn on the machine of John Doe the user, in > practice you need to distribute the shared library with the > executable, which all but defeats the purpose of the shared libraries. but in cases, where the application consists of a (potentially large) group of executables, all sharing a large group of common code, then it *could* be really nice: Consider (a realistic) example of 100 programs, each linking in a full library of the order of 0.5MB in size, while the actual object code of each program may be just around ten kilobytes: Distributing statically linked versions would require approx. 100*0.5MB = 50MB, which is unlikely to compress into something, that will fit onto a single diskette. Dynamically linked versions will only require 100*10kB+0.5MB = 1.5MB, which is *extremely* likely to compress into a single-diskette distribution. Also, invocation of the programs is likely to speed up, because the shared library is very likely to be already in the disk cache, when any of the programs are loaded. Hence, while not saving any core memory, shared libraries in the DJGPP environment may help fight software megalomania (bloatware). This does not mean I am volunteering to implement it (I would have no idea of how to do and where to start), but if anyone should have the guts to attack the problem, I do not think they should be discouraged: Fighting Software Megalomania is one of the ways we can make the world a better place to live! -- Thomas Knudsen | www: http://www.gfy.ku.dk/~tk/ National Survey and Cadastre - Denmark | e-mail: tk AT gfy DOT ku DOT dk Geodetic Department, Rentemestervej 8 | Direct Phone: +45 35 87 52 64 DK-2400 Copenhagen NV, Denmark | FAX: +45 35 87 50 52