Michael Wojcik wrote:
Uwe Stöhr wrote:
Dominik Waßenhoven schrieb:

On the Vista machine, I had no Python installed and the lyx2lyx script
failed. I now installed Microsoft's VC++ redistributable package, as
suggested by Paul Rubin, and now the lyx2lyx script works. So I think
there is a problem with the python.exe and/or python26.dll which are in
the bin directory of LyX 1.6.
But I also had no Python installed on this Vista machine, only installed
LyX using my installer and it worked. I also got feedback that it works
for others too.

It appears the bundled Python requires a particular release of
Microsoft's C runtime. There are approximately a zillion releases of
the MSVC runtime, all mutually incompatible.

For years, Microsoft handled this by changing the name of the MSVC
runtime DLLs with each release. More recently, when someone decided
it'd be good to have more incompatible runtime versions than would fit
in a single MSVC release cycle, they invented the "Side by Side"
versioning method, which has the advantages of being a black box,
completely different from previous Windows DLL versioning mechanisms,
and entirely mysterious, opaque, and frustrating for users.

Side-by-Side sticks various releases of the MSVC runtime in
directories under %windir%\winsxs.

Product installers are supposed to include the MSVC redistributable
package for the particular MSVC version they need, which will get
installed in Side-by-Side if it's not already present.

Probably, people who don't have problems with the minimal Python
included with Uwe's installer already have the necessary MSVC
redistributable on their machine from some other product installation.

The fix would be to include the appropriate MSVC redistributable in
Uwe's LyX installer. Note that it may have to be updated any time the
Python binaries are updated, since they might be linked with a
different MSVC version.

Sure makes SVR4 shared object versioning look good, doesn't it?


I wonder if disk manufacturers are paying M$ to do this? I've got about 54MB of crap in %windir%\winsxs, with multiple versions of each set of files. Presumably there's no way for Windoze to know that something depending on an older version can use the newer version, so old versions never go away. Kind of like that half gigabyte (and counting) of patch files that never gets deleted.

Reply via email to