VS2022配置编译使用boost库

打印 上一主题 下一主题

主题 526|帖子 526|积分 1578

1、下载boost最新版本,以1.85为示例:
Boost Downloads

2、解压boost文件至D:\boost_1_85_0

3、打开VS2022命令行(赤色区域不要进错了!)

4、在命令行输入以下

5、输入bootstrap.bat后会自动天生b2.exe
6、待第5步完成,依次输入这两行命令(这里根据电脑硬件配置决定,通常3-10分钟完毕)
  1. # 生成32位
  2. b2 toolset=msvc-14.3 --build-type=complete architecture=x86 address-model=32 threading=multi link=static,shared variant=debug,release stage
  3. # 生成64位
  4. b2 toolset=msvc-14.3 --build-type=complete architecture=x86 address-model=64 threading=multi link=static,shared variant=debug,release stage
复制代码
7、命令行参数注释(可不用理会)
  1. toolset=msvc-14.3                                                 指定了使用 Visual Studio 2017 编译器。
  2. --build-type=complete                                         表示构建所有 Boost 组件。
  3. architecture=x86 和 address-model=32         指定了生成 32 位架构的库。
  4. architecture=x86 和 address-model=64         指定了生成 64 位架构的库。
  5. threading=multi                                                 表示多线程支持。
  6. link=static,shared                                                 表示同时生成静态库和动态库。
  7. variant=debug,release                                         表示同时编译调试和发布版本。
复制代码
8、在使用时间,VS中需要设置以下关键位置:
  1. # 头文件目录
  2. D:\boost_1_85_0;
  3. # lib库目录
  4. D:\boost_1_85_0\stage\lib;
复制代码



9、上面的路径设好后,写一段测试代码试试:
  1. #include <boost/lexical_cast.hpp>     
  2. #include <iostream>   
  3. using namespace std;
  4. using namespace boost;
  5. int main(){
  6.         double a = lexical_cast<double>("3.141592");
  7.         string str = lexical_cast<string>("3.141592");
  8.         cout << "This is a number: " << a << endl;
  9.         cout << "This is a string: " << str << endl;
  10.         int b = 0;
  11.         try {
  12.                 b = lexical_cast<int>("xiaomi_su7");
  13.         }
  14.         catch (bad_lexical_cast& e) {
  15.                 cout << e.what() << endl;
  16.         }
  17.         return 0;
  18. }
复制代码


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

河曲智叟

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表