好吧,我在链接使用 unicode 字符集编译的库时收到此警告,而我的项目使用多字节字符集。
1>LINK : warning LNK4098: defaultlib 'mfc110u.lib' conflicts with use of other libs; use /NODEFAULTLIB:library
1>LINK : warning LNK4098: defaultlib 'mfcs110u.lib' conflicts with use of other libs; use /NODEFAULTLIB:library
(注意,不涉及其他库,如 msvcrt
等)我的问题是如何处理这个问题。我可以简单地忽略它还是必须在任何情况下添加/NODEFAULTLIB:lib(mfc110u.lib 或 mfc110.lib???)?
提前致谢
最佳答案
有几个选项可用(同样适用于混合调试/发布库的类似警告)。
1) 使用相同的项目规范重建所有内容,因此在您的情况下是多字节还是 unicode
2) 一切保持原样,但要注意在使用不同运行时的应用程序和库中传递的数据。因此,您不会将任何可能会根据其他运行时错误处理的库传递给库。在调试/发布问题的情况下,这意味着例如你不释放()或删除[]任何在库中分配的东西,反之亦然。在你的情况下,如果库期望任何参数是 unicode,你应该采取措施提供适当的字符串到库函数。
关于c++ - 警告 LNK4098 : defaultlib 'mfc110u.lib' conflicts with use of other libs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16100174/