|
![](/i/fill.gif) |
Darren New <dne### [at] san rr com> wrote:
> > Well, duh. People don't use soft links because Windows doesn't support
> > them. Seems plainly obvious.
> It has some support. People don't use them because they don't need them,
> really.
No. Windows doesn't support them, so user have learned to live without
them, and then they are claiming that they "don't need them" (one of the
most common "windows'isms").
If Windows had supported soft links from day one, they would probably be
in pretty common use, and it would be unthinkable to drop them.
> Software is written to not hard-code paths that don't need to be
> hard-coded.
Yeah, because that's the *only* thing soft links are used for.
> > I'm pretty sure you wouldn't be writing that if Windows had full support
> > for soft links from day one to this day.
> Uh, yes, actually, I would.
You might yourself believe that, but I don't think it's true. I'm pretty
certain that if Windows had supported soft links from the very beginning,
you would today be defending them. (You would *especially* be defending
them if Unix/Linux didn't support them, I'm pretty sure.)
> I think soft links are an abomination, and I've
> only ever seen them used to basically correct flaws in software
> configurations.
Linux distros use them frequently to, for example, make "aliases" of
libraries of different versions to an actual file which is fully compatible.
In other words, if version 1.2.3 of a library is fully backwards compatible
back to version 1.0.0 of the library, the "versionless" library (eg.
"libsomething.so") file will usually be linked to the 1.2.3 version of the
file (eg. "libsomething.so.1.2.3"), as well as the several versioned files
(eg. "libsomething.so.1" would be a soft link to "libsomething.so.1.2.3" if
the latter is fully backwards compatible with version 1).
This is not a question of "bad configuration". It's a question of
practicality (an executable may have been linked against version 1.0.0 of
the library, but it will work ok with the version 1.2.3, so the soft link
will make it load that) and saving disk space (especially if the library is
several megabytes in size).
And before you start nitpicking about how that could be solved in other
ways (which I'm 100% sure you will do), that was just ONE EXAMPLE of many.
(Another cool example is when a software package consists of several
executables, each one doing slightly different things... But instead of
having a 5-megabyte file for each executable, they are all in fact soft
links to one single 6-megabyte executable which then acts different depending
in which name was used to start it. Again, this saves disk space.)
--
- Warp
Post a reply to this message
|
![](/i/fill.gif) |