我有一个用以前版本的 visual studio 创建的 .lib 文件,可能是 2003 我将它与我在 visual studio 2010 中的代码链接起来。构建成功但我收到此警告
warning LNK4098: defaultlib 'msvcrt.lib' conflicts with use of other libs; use /NODEFAULTLIB:library
我希望我的应用程序使用 VS2010 'msvcrt.lib' 库,它比 嵌入在 .lib 文件中的库。
如何确保 VS2010 库已链接? 有没有办法强制我的旧 .lib 使用新的“msvcrt.lib”?
我在原生 CPP 中编程。
最佳答案
正如 DeadMG 所指出的,您的库可能正在使用较旧的 9.0 7.0 或 7.1 运行时库。在 VS2010 中,10.0 运行时是默认的。您可能需要使用新的运行时重新编译您的库。
请注意,v10 运行时仅针对 Windows XP SP3 或更高版本。如果您仍希望以较低版本的操作系统为目标,则需要使用 v90 运行时。
关于c++ - 需要帮助解决库冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7351750/