From: Earnie B. <ea...@us...> - 2012-04-10 12:42:55
|
On Mon, Apr 9, 2012 at 3:32 PM, Peter Rockett <p.r...@sh...> wrote: > On 09/04/12 10:16, Keith Marshall wrote: > > ...snip >>> Ultimately, the cleanest technique would be static linking... but >>> unfortunately MinGW does not provide static libraries. >> Well, that isn't likely to happen; (why do so many Windoze users exhibit >> this irrational aversion to using DLLs?) >> > > From my point of view, the difference is between writing a program on a > machine on which the MinGW toolchain is installed, and deploying a > program on a machine on which MinGW is not installed. For the former, a > static build is pointless. For the latter, a static build is, IMHO, a > clean way of producing an program with no additional dependencies. > There's the faff of copying the DLLs across in addition to the EXE - OK > , a minor chore but I have had users delete DLLs because they thought > they were not needed. (Program stopped working - doh!) So unless it's a > native system DLL, my view is that it's unwise to (dynamically) link > against it for _deployable_ versions of programs. But maybe that's my > particular compartmentalised way of looking at the world... > > So I don't think it's fair to say "irrational aversion" - quite the > opposite. But you may not agree with the rationale. I for one disagree with your arguments and agree with Keith. Users who go deleting files in a programs directory without understanding the side affects are to be lined up against the wall, blindfolded and shot. Really, they are at their own mercy and should not be allowed near a computer. If one is stupid enough to delete a dll file then they are also stupid enough to delete the .exe file so your excuse for your rational doesn't stand the test of stupidity. Using a DLL cuts the memory foot print when more than one copy of the program is in memory or more than one program uses the same functions. Using static versions of those libraries causes multiple copies of the same functions to be in memory in different locations at the same time. Using static versions of libraries cause the users computers to become slower because now memory must be swapped out more often. So, yes it is fair to say "irrational aversion" because you haven't given a solid reason to use a static library. -- Earnie -- https://sites.google.com/site/earnieboyd |