網站首頁 編程語言 正文
在win端如果使用非VS編譯器,則需要使用Boost.Build來創建自己的二進制文件。
本文,主要記錄win系統用MinGW編譯Boost庫的過程。
1、下載
boost下載并解壓縮,下載鏈接:https://www.boost.org/users/history/
2、編譯鏈接庫
1)創建三個獨立文件夾
#后期可以刪除,安裝Boost.Build
mkdir D:\boost_build
#后期可以刪除,存放
mkdir D:\boost_1_76_0\build
#后期不可刪除,存放庫文件的
mkdir D:\boost
2)安裝Boost.Build
cd D:\boost_1_76_0\tools\build
bootstrap.bat gcc
b2 install --prefix="D:\boost_build" --toolset=gcc
3)編譯鏈接庫
先將cd D:\boost_1_76_0\
cd D:\boost_1_76_0\
b2 --build-dir="D:\boost_1_76_0\build" --prefix="D:\boost" --toolset=gcc --build-type=complete stage
4) 刪除
編譯完成后,可以把D:\boost_build和D:\boost_1_76_0\build兩個目錄刪掉,最終的boost庫安裝在D:\boost下面
3、鏈接庫測試
gcc -I"D:\boost\include\boost-1_76" -L"D:\boost\lib"
INCLUDE += D:\process\boost_1_77_0
LIB += D:\process\boost_1_77_0\stage\lib
測試代碼:
#include <iostream>
#include <string>
#include <boost/thread/thread.hpp>
#include <boost/bind.hpp>
using namespace boost;
void helloA()
{
std::cout << "I'm thread A ! --- Start " << std::endl;
sleep(10);
std::cout << "I'm thread A ! --- OVER " << std::endl;
}
void helloB()
{
std::cout << "I'm thread B ! --- Start " << std::endl;
sleep(10);
std::cout << "I'm thread B ! --- OVER " << std::endl;
}
int main(int argc, char *argv[])
{
std::cout << "Hello world!" << std::endl;
boost::thread thrdA(&helloA);
boost::thread thrdB(&helloB);
thrdA.join();
thrdB.join();
}
總結
原文鏈接:https://blog.csdn.net/zeye5731/article/details/127380251
相關推薦
- 2022-06-29 Python容器類型轉換的3種方法實例_python
- 2022-08-11 boost字符串處理函數format的用法_C 語言
- 2023-05-21 linux中grep命令使用實戰詳解_Linux
- 2022-02-11 小程序如何把參數設置為全局變量
- 2022-08-17 R語言學習VennDiagram包繪制韋恩圖示例_R語言
- 2023-07-26 TypeScript中的對象類型(可選屬性 只讀屬性 交叉類型)
- 2022-04-03 基于Docker實現Redis主從+哨兵搭建的示例實踐_docker
- 2022-07-25 C/C++實現線性單鏈表的示例代碼_C 語言
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支