当前位置: 首页 > article >正文

关于调用静态链接库LIB,提示重定义或库冲突的错误

在一个项目里使用了静态链接库,但是一编译就报错

LIBCMTD.lib(invarg.obj) : error LNK2005: __invoke_watson 已经在 MSVCRTD.lib(MSVCR100D.dll) 中定义

1>LIBCMTD.lib(dosmap.obj) : error LNK2005: __errno 已经在 MSVCRTD.lib(MSVCR100D.dll) 中定义

1>LIBCMTD.lib(dbgheap.obj) : error LNK2005: __CrtSetCheckCount 已经在 MSVCRTD.lib(MSVCR100D.dll) 中定义

1>LIBCMTD.lib(dbghook.obj) : error LNK2005: __crt_debugger_hook 已经在 MSVCRTD.lib(MSVCR100D.dll) 中定义

 

重新设置了项目属性(包含路径,引用路径,库路径以及依赖项),依然报错,有时还报错“默认库“library”与其他库的使用冲突"。看了问题还是出在库引用上,查了一些资料,原因如下:

 运行时库现在包含防止混合不同类型的指令。如果试图在同一个程序中使用不同类型的运行时库或使用调试和非调试版本的运行时库,则将收到此警告。例如,如果编译一个文件以使用一种运行时库,而编译另一个文件以使用另一种运行时库(例如单线程运行时库对多线程运行时库),并试图链接它们,则将得到此警告。应将所有源文件编译为使用同一个运行时库。原因和解决办法:编译过程中,链接器搜索的库有LIBC.lib、LIBCMT.lib、LIBCD.lib、LIBCMTD.lib等类型。根据工程里面设置的选项而连接不同的库。在一个多模块(调用其它dll等)的程序中,如果编译一个文件使用一种运行时库,而编译另一个文件以使用另一种运行时库,并试图链接它们,则将得到此警告。

正确的解决办法是:在所有的模块使用相同的运行时库选项编译,然后链接。

由于我其他项目使用的是/MTd运行库编译模式,而当前项目默认是/MDd模式,这样就出现了不同模块运行时库选项不一致的问题,于是解决办法就很简单了,因为使用了静态库,设置代码生成——链接库的地方就不能用动态库的/MDd, 而是/MTd

http://www.lryc.cn/news/2417615.html

相关文章:

  • saltstack-redhat6.5版本
  • 难倒了N个硕士和博士的三年级奥数题
  • 博客(Blog)的商业价值实现模式探讨
  • 使用hydra离线破解windows密码
  • 在Windows中使用TCP端口139和445
  • InfoQ-China发布在即,敬请关注支持
  • HttpServletRequest和ServletRequest的区别以及HttpServletRequest对象方法的用法
  • 【Consul】Consul的Linux之旅:实现高效部署与维护的入门指南
  • 华为荣耀5a是android几,荣耀5A配置怎么样 荣耀畅玩5A参数详情
  • vSphere 性能优化方法 故障排错方法及工具总结(一)
  • 抖音垂直养号,关键词养号,autojs脚本自动
  • 一些医学网站
  • Loadrunner中对中文进行UTF-8转码
  • 【论文合集】Awesome Diffusion Models 2
  • 视频编码标准H.264/AVC
  • python 天天向上续以七天为周期_《天天向上》主持人高天鹤回应考试作弊后续:以后要靠自己去拼搏...
  • 渗透测试知识点总结(非常详细),从零基础入门到精通,看完这一篇就够了
  • 分享一些好用的网站
  • MATLAB算法实战应用案例精讲-【人工智能】时空人工智能(Spatio-TemporalAI)(概念篇)
  • python交易是什么意思_py交易是什么意思 py交易是什么梗
  • 生产管理ERP系统应用案例图
  • 如何快速搭建一个免费的 鉴黄 平台?
  • 2022考研计算机-数据库原理教程1-7章
  • 最最详细的黑马前端HTML5+CSS3笔记,给大家整理好了
  • ios+测试版软件,ios15测试版描述文件
  • LIBRARY_PATH和LD_LIBRARY_PATH环境变量的区别
  • 【沃顿商学院学习笔记】商业基础——Accounting:06财务报表的几大比率知识学习(完)
  • MyEclipse 2017配置Tomcat8
  • mysql PREPARE用法_PHP5 mysqli的
  • matlab分类算法代码,[转载]两种图像分类算法和matlab源代码