需要帮助来解决库冲突

时间:2011-09-08 16:57:06

标签: c++

我有一个使用以前版本的visual studio创建的.lib文件,也许是2003年 我将它与我在Visual Studio 2010中的代码链接。构建成功但我收到此警告

  

警告LNK4098:defaultlib'msvcrt.lib'与使用其他lib冲突;使用/ NODEFAULTLIB:库

我希望我的应用程序使用VS2010'msvcrt.lib'库,它比新版本更新 嵌入在.lib文件中的库。

如何确保VS2010库已链接? 有没有办法强迫我的旧.lib使用新的'msvcrt.lib'?

我在Native CPP中编程。

2 个答案:

答案 0 :(得分:1)

您的库可能正在使用较旧的 9.0 7.0或7.1运行时库,正如DeadMG所指出的那样。在VS2010中,10.0运行时是默认值。您可能需要使用新运行时重新编译库。

请注意,v10运行时仅针对Windows XP SP3或更高版本。如果您仍希望使用较低的操作系统,则需要使用v90运行时。

答案 1 :(得分:0)

看起来像运行时库中的问题(设置 - > c / c ++ - >代码生成 - >运行时库)

我怀疑有没有可能修复它而无需使用DLL runtiome库重新编译2003 lib文件(但在这种情况下你可以在2010工作室编译它:))