Francois Gouget wrote:
Uwe Bonnes wrote: [...]
Missing MFC42 and other redistributable DLLs is a showstopper for winelib and running windows code on non i386 archtecture...
Well, not quite. If you're going to use Winelib it means that you have the source of the application. And if it is using the MFC it should mean that you have a Visual Studio license, and thus the MFC sources (though maybe that's only in the 'Pro' edition or some such). So then you should be able to recompile the MFC using Winelib. That's exactly what I did five years or so ago. I had to trim quite a few things but got something that was somewhat usable. I did not pursue it further though.
Modern day MFC probably changed a bit (did it really change much?), but then Winelib should be much better too. The real issue is the license. In the Visual Studio 6 era, it seemed like it was legal to redistribute the MFC dll with your non-trivial application, with no mention of the platform. This might have changed since, and in any case that's something you'd want to check with a lawyer.
In Visual Studio 6 it was allowed. In Visual C++ .net, it says not only "only in object code form" and together with a product that "adds significant and primary functionality to the Redistributables", but also:
"Redistributables only operate in conjunction with Microsoft Windows platforms".
I believe this is a direct response to Wine being rather useful.
Also, end users may not distribute the Redistributable further.
(Of course, programs developed with Visual C++ .net may still be distributed, but this license covers Microsofts copyrights on their redistributables.)
regards, Jakob