C++ win系統(tǒng)如何用MinGW編譯Boost庫(kù)
在win端如果使用非VS編譯器,則需要使用Boost.Build來創(chuàng)建自己的二進(jìn)制文件。
本文,主要記錄win系統(tǒng)用MinGW編譯Boost庫(kù)的過程。
1、下載
boost下載并解壓縮,下載鏈接:https://www.boost.org/users/history/
2、編譯鏈接庫(kù)
1)創(chuàng)建三個(gè)獨(dú)立文件夾
#后期可以刪除,安裝Boost.Build mkdir D:\boost_build #后期可以刪除,存放 mkdir D:\boost_1_76_0\build #后期不可刪除,存放庫(kù)文件的 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)編譯鏈接庫(kù)
先將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兩個(gè)目錄刪掉,最終的boost庫(kù)安裝在D:\boost下面
3、鏈接庫(kù)測(cè)試
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
測(cè)試代碼:
#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();
}總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
C++中CString string char* char 之間的字符轉(zhuǎn)換(多種方法)
在寫程序的時(shí)候,我們經(jīng)常遇到各種各樣的類型轉(zhuǎn)換,比如 char* CString string 之間的互相轉(zhuǎn)換,這里簡(jiǎn)單為大家介紹一下,需要的朋友可以參考下2017-09-09
Java?C++?算法題解拓展leetcode670最大交換示例
這篇文章主要介紹了Java?C++算法題解拓展leetcode670最大交換示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-09-09
c++項(xiàng)目中后綴名vcxproj和sln的區(qū)別及說明
這篇文章主要介紹了c++項(xiàng)目中后綴名vcxproj和sln的區(qū)別及說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-05-05
C/C++函數(shù)參數(shù)聲明解析int?fun()?與?int?fun(void)?的區(qū)別講解
C++中int fun()和int fun(void)的區(qū)別在于函數(shù)參數(shù)的聲明方式,前者默認(rèn)允許任意參數(shù),而后者表示沒有參數(shù),通過清晰的實(shí)例源代碼,詳細(xì)解釋了它們?cè)诤瘮?shù)聲明和調(diào)用中的不同之處,這篇文章介紹了C/C++函數(shù)參數(shù)聲明int?fun()與int?fun(void)的差異,需要的朋友可以參考下2024-01-01
C語言異或校驗(yàn)算法的項(xiàng)目實(shí)現(xiàn)
異或校驗(yàn)算法(XOR校驗(yàn))是一種簡(jiǎn)單的校驗(yàn)算法,用于檢測(cè)數(shù)據(jù)在傳輸或存儲(chǔ)過程中是否發(fā)生了錯(cuò)誤,本文主要介紹了C語言異或校驗(yàn)算法的項(xiàng)目實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下2023-08-08
嵌入式項(xiàng)目使用C語言結(jié)構(gòu)體位段特性實(shí)現(xiàn)斷言宏校驗(yàn)數(shù)據(jù)范圍有效性的方法
今天小編就為大家分享一篇關(guān)于嵌入式項(xiàng)目使用C語言結(jié)構(gòu)體位段特性實(shí)現(xiàn)斷言宏校驗(yàn)數(shù)據(jù)范圍有效性的方法,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2018-12-12

