当前位置 : 主页 > 手机开发 > 其它 >

为什么即使设置/ MT选项,我也会看到MSVCR90依赖?

来源:互联网 收集:自由互联 发布时间:2021-06-22
我正在Visual C 2008中构建一个DLL,我希望将运行时静态链接到DLL中.所以我进入项目选项并将Runtime Library设置为多线程(/ MT).这在过去一直适用于其他项目.但是当我构建这个时,我仍然最终得
我正在Visual C 2008中构建一个DLL,我希望将运行时静态链接到DLL中.所以我进入项目选项并将Runtime Library设置为多线程(/ MT).这在过去一直适用于其他项目.但是当我构建这个时,我仍然最终得到了Dependency Walker在列表中显示MSVCR90.dll.

有人知道是什么原因引起的吗?

项目属性,链接器,命令行.添加/ verbose选项.构建重建. “输出”窗口显示链接器搜索符号.注意msvcrt.lib,这是引入msvcr90.dll依赖的那个

典型的原因是链接.lib,其中包含一个或多个使用/ MD编译的.obj文件.对msvcrt.lib的依赖注入了#pragma comment(lib,msvcrt.lib)指令.这告诉链接器搜索msvcrt.lib而不将其显式指定为链接器,输入,附加依赖项中的依赖项.

网友评论