On Tue, 12 Jan 2010 17:40:58 -0500, Walter Bright
<[email protected]> wrote:
Steven Schveighoffer wrote:
I hope this is not a permanent situation. Shared libraries (not
necessarily DLLs) help reduce the memory usage of all the programs on
the system that use the same libraries, and the footprint of the
binaries.
That would be reasonable once we can get libphobos installed on linux
distributions. Right now, it's easier for users to not have to deal with
version hell for shared libraries. Static linking of phobos does not
impair using D, so it is a lower priority.
As long as it's not viewed as a detriment for D to be shared-library based
(or a "benefit" to be statically linked), I'm OK with it. I agree that
when shared libraries are available, the easiest distribution method would
be an installer which put all the files in the right places. But those
are pretty easy to come by.
The "DLL hell" versioning problem AFAIK is only on Windows,
My experience is different. There are two C shared libraries in common
use on Linux. If I link dmd to one, one group of dmd users gets annoyed,
if I link with the other, the other half gets annoyed. There's no decent
solution.
I call that distribution hell :) You have to remember that releasing a
binary on a Linux OS does not make that binary compatible with all other
types of Linux OSes. However, compiling a binary on a specific linux OS
should make that library runnable on all later versions of that OS
(sometimes requires installing "legacy" libs)
The solution is pretty simple however, and most companies just live with
it -- support 3 or 4 different flavors of Linux by building a package for
each one. Usually it's RedHat, SuSE, Ubuntu, and Debian. The effort it
takes to build under 2 or 3 different environments is not that much.
The advent of full dmd source being available should relieve that problem
anyways...
On all your other points, I agree that installs these days are bigger
more because of media than binaries. I do have a problem with that in
some cases. I don't want my scanner driver software to install 500MB
of crap that I will never use when all I want to do is scan documents
with a simple interface. I don't need "skins" for my word processor or
help videos on how to use my mouse. Just install the shit that does
the work, and leave the rest of my hard drive alone :)
Heh, dlls won't solve that problem. I upgraded Nero to support a new dvd
drive, and what the heck, a 20Mb install turned into - 360Mb !!
The only thing I've found that solves this problem is -- not using
Windows. For some reason Linux developers still put value on small exe
size and actual features instead of needlessly snazzy UI and exploding
media bloat.
-Steve