VTP project: problemi a causa di Microsoft®.

di meninpippodibill

Un esempio di oggi di come la politica del sw proprietario crea difficoltà del tutto evitabili agli sviluppatori.
Scrive Ben Discoe delle difficoltà del porting della nuova release del VTP in ambiente windows dovute a vincoli sulla distribuzione di binari precompilati.....

This email is about build issues, the trouble involved in supporting the three versions of Visual C++:
VC 2003, aka VC7.
VC 2005, aka VC8.
VC 2008, aka VC9.

When i was in Romania last week, i needed to compile the VTP on a fresh Windows machine, with no development tools. To do so, i went to microsoft.com, and download the available Visual C++, which is now (only) VC9. The VTP build instructions provide precompiled libraries for VC7 and VC8. These work to only some degree with VC9. In particular, libpng/zlib and OSG had to be recompiled with VC9, in order for them to work.

It's bad enough that Microsoft® broke two things in the move from VC7 to VC8:
1. Introduced 'manifests', which makes it nearly impossible to distribute precompiled debug binaries that will work on another developer's machine.
2. 'Manifests' also cause trouble with release mode, being extremely picky about what version of the runtime library (MSVCRT..) is installed on a target machine.

That alone has made supporting VTP across VC versions much harder. But now that VC9 is the only version available online, and is not fully binary compatible with VC8, i face the prospect of having to keep all three (VC7, VC8, VC9) on my machine and rebuild every dependency on all three, and repackage, every time any library changes. This is really a lot of overhead.
Il link a questo straordinario progetto: