我试图看看您是否可以分发MEX文件而无需最终用户安装C ++运行时库。 当您使用visual 2010 express创建MEX时,Matlab会发出此警告:
警告:使用Microsoft Visual C ++生成的应用程序/组件
2010年要求Microsoft Visual Studio 2010运行时间
可以在用于部署的计算机上使用库
要重新分发您的应用程序/组件,请确保
部署机器有这些运行时库。
是否有编译器不需要在终端机器上安装运行时库?
答案 0 :(得分:2)
是的,有:MinGW(-w64) GCC。它只链接到OS库msvcrt.dll(当你使用-static
选项链接时),它不需要安装,是Windows的一部分。
要让Matlab使用它,你需要跳过一些箍。 Here is some information。忽略Cygwin的东西,并确保使用从上面的链接目标x64 Windows的MinGW-w64工具链。注意我没有亲自测试过这个,但这是你最好的选择。 Mathworks也不支持它,所以你是独立的。
顺便说一下,安装MSVC++2010 redistributable的问题是什么?对许可没有影响,运行MEX代码意味着安装了Matlab。安装一件小东西对恕我直言不会那么麻烦。