/ MT选项(MSVCR100.dll依赖项的静态链接)不适用于Visual Studio

时间:2015-07-22 18:44:17

标签: c++ visual-studio-2010 dll

我使用的是用MSVC9编译的DLL(Visual Studio 10 C ++)。 msvcp100d.dll和msvcr100d.dll存在依赖关系。

我想创建一个静态链接,以便独立使用我的DLL。为此,我在makefile中使用/ MT而不是/ MD选项。

当我用dumpbin或依赖walker检查依赖关系仍然存在时,msvcp100d.dll和msvcr100d.dll似乎仍然是动态链接的。

另一件似乎有关系的事情,如果我通过VS使用DLL我没有问题,如果我使用另一个程序,我有一个崩溃 - 它似乎得到了解释!

谢谢!

1 个答案:

答案 0 :(得分:0)

谢谢@Hans Passant他是对的,我正在使用另一个DLL链接,其中存在依赖关系msvcp100d.dll和msvcr100d.dll。 因此即使使用我的DLL的静态编译,我仍然需要其他DLL。 我将在发布模式下使用这些DLL。