Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Installing shared libraries can cause problems, but that's rare because shared libraries are versioned in Linux, as opposed to Windows, which greatly reduces the incidence of DLL Hell. In short, a program might find a shared library that isn't the one it wants, but it very likely won't.

In fairness to Windows (and I never thought I would say that), .DLL files are now versioned via WinSxS (https://en.wikipedia.org/wiki/Side-by-side_assembly).



> In fairness to Windows (and I never thought I would say that), .DLL files are now versioned via WinSxS

Apparently, that's not working as well as MS hoped, either from a technical or adopting perspective: From the same wikipedia article:

- However, runtime libraries in Visual C++ 2010 no longer use this technology; instead, they include the version number of a DLL in its file name, which means that different versions of one DLL will technically be completely different DLLs now.

- a bug in sxs.dll causes heap corruption, leading to application crashes. This issue is not fixed by any XP service packs. Users must manually install a QFE (Quick Fix Engineering).

It should be noted that including the version of the library in the filename has been a simple solution that's been used in Unix since the early '90s, when shared libraries become fashionable. (Oh, Ultrix - how I hated not having shared libraries when I had to use you... Luckily, you're dead now)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: