VS2013使用boostregex遭遇无法打开libboost_regex-vc120-mt-sgd-1_62.lib的问题
通过Boost库可以在C++项目中使用正则表达式,配置好环境后链接过程出现”无法打开libboost_regex-vc120-mt-sgd-1_62.lib”的错误.
原因是按照官方生成lib的方法没有生成libboost_regex-vc120-mt-sgd-1_62.lib,需要自己生成这个静态库.
解决方案
- 以我本地环境为例:
在Boost解压出来的目录下D:\boost_1_62_0运行cmd,输入并执行命令:
bjam stage --toolset=msvc-12.0 --stagedir="D:\boost" link=static runtime-link=static threading=multi debug release
其中”D:\boost”目录可自行指定,用于存放生成的lib文件.
执行完毕后将lib存放的目录”D:\boost\lib”添加项目依赖的库目录中
项目属性->配置属性->C/C++->代码生成->运行库 设置为 多线程调试 (/MTd)
根据libboost_regex-vc120-mt-sgd-1_62.lib文件命名 mt 表示多线程 s表示static静态d表示debug