LNK1104 无法打开文件“libboost_system-vc141-mt-gd-x64-1_68.lib”

LNK1104 无法打开文件“libboost_system-vc141-mt-gd-x64-1_68.lib”

笔者的情况:
1:Visual Studio 2017 已经设置 项目属性 -> VC++目录->包含目录和库目录
但是在编译工程时依然报错,网上找资料各种解决方法都有,这里贴下我认为靠谱的解决方法

解决方案:

1:

确保你的工程平台对应你生成的boost lib ,例如x64工程对应x64的lib这个不用多说了

2:

举个boost生成语句的例子:

b2 stage --toolset=msvc-14.1 --without-graph --without-graph_parallel --stagedir="F:\boost_1_68_0\build\lib" link=static runtime-link=static runtime-link=static threading=multi debug release

重点关注【runtime-link=X】 X的取值是share和static,前者指定生成动态lib,后者则是生成静态lib。

3:

重点

X = static 时 项目属性 → C/C++ →代码生成 → 运行库 【多线程调试(/MTd)】
X = share 时 项目属性 → C/C++ →代码生成 → 运行库 【多线程调试 DLL (/MDd)】

4 :

重新生成下工程就OK了




演示:【笔者用的是static的方式】

1:默认使用的是MDd模式,可以看到编译时报错了

在这里插入图片描述

2: 然后我们修改为 MTd模式, 可以看到编译成功了
在这里插入图片描述

笔者没有试过share的方式,理论上share选的应该是DLL的方式

  • 8
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值