[原]error LNK2005:"XXX已经在 XXX.obj 中定义 使用 /FORCE(强制文件输出)暴力解决...

参考:https://blog.csdn.net/LG1259156776/article/details/80828720

https://blog.csdn.net/cai18381306175/article/details/79383068

https://www.xuebuyuan.com/979269.html

 

error LNK2005是很明显的重定义问题

 

但是有时候,我们用别人的lib进行开发,很难改变重定义问题。

这个时候,我们就选择(强制文件输出)暴力跳过,进行编译。

这里使用/FORCE:MULTIPLE 进行解决

 

方法:

工程  ------》属性

------》连接器

-------》命令行

添加    /FORCE:MULTIPLE 

 

但是,我们要知道为什么添加这个可以编译通过:

/FORCE:[MULTIPLE|UNRESOLVED]  

/FORCE 选项可以带一个可选参数:

  • 使用 /FORCE:MULTIPLE 可创建输出文件,而不管 LINK 是否找到了符号的多个定义。

  • 使用 /FORCE:UNRESOLVED 可创建输出文件,而不管 LINK 是否找到未定义的符号。如果未解析入口点符号,则将忽略 /FORCE:UNRESOLVED。

不带参数的 /FORCE 表示多次定义和未解析。

用该选项创建的文件可能不会按预期运行。 当指定 /FORCE 选项时,链接器将不增量链接。

如果使用 /clr 编译模块,则 /FORCE 将不会创建映像。

 

参见:

链接器选项

 

转载于:https://www.cnblogs.com/lyggqm/p/11133077.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值