VsCode + mingw編譯器下boost庫的安裝
1. VsCode + mingw編譯環境的安裝
之前寫過如何安裝,沒有安裝環境的請看!Visual Studio Code 配置C++環境 mingw的環境變數必須新增正確
2. boost庫的下載
1.boost下載網址https://www.boost.org/users/history/
大家可以下載自己想要的版本,筆者下載的是1.70版本,網上說1.70之後的版本不支援mingw編譯環境,這點應該是錯誤的。
3. boost庫的解壓
1.下載boost庫後是一個壓縮包,第一步是解壓該壓縮包,解壓後的壓縮包的檔案如下:
解壓後已經有boost庫的標頭檔案包了,在boost資料夾裡,但還沒有boost的連結庫,需要生成該連結庫
4. boost庫的連結庫生成
2.進入\boost_1_70_0\tools\build\src\engine資料夾,在該檔案下單機滑鼠右鍵,選擇在windows開啟終端,如果不可以,用win+R,輸入cmd開啟中,利用cd命令進入\boost_1_70_0\tools\build\src\engine資料夾,輸入命令
.\build.bat gcc
輸入該該命令後最後幾行輸出如下:
之後會得到一個bin.ntx86_64的資料夾,如下圖所示:
該資料夾下有兩個檔案b2.exe和bjam.exe,將這兩個檔案複製到boost解壓包根目錄下,如下圖所示:
在該資料夾下開啟終端,輸入命令:
.\b2.exe toolset=gcc
這樣便可以安裝全部的boost庫檔案,如果你只想連結部分庫,如program_options和filesystem,輸入如下指令:
.\b2.exe toolset=gcc --with-program_options --with-filesystem
其中with後面跟你想要連結的庫的名稱。
這個連結全部庫過程花的時間比較長,看電腦的效能,我的花了20min左右。如果你連結了全部庫,會在安裝包根目錄下生成一個stage資料夾,該資料夾下有一個lib資料夾,檔案下是所有的連結庫檔案。部分如下:
將這些檔案全部移動至你的mingw編譯環境的安裝目錄的lib資料夾下,如下圖所示:
如果你的電腦和我的電腦一樣,還有一個 x86_64-w64-mingw32資料夾,那麼應該移至該資料夾下的lib資料夾,同時將boost資料夾移至該資料夾下的include資料夾,如下圖所示:
至此安裝完成。
5. boost庫測試
在vscode新建一個cpp程式,輸入如下程式:
// lexcast18_11.cpp -- simple cast from float to string
#include <iostream>
#include <string>
#include "boost/lexical_cast.hpp"
int main()
{
using namespace std;
cout << "Enter your weight: ";
float weight;
cin >> weight;
string gain = "A 10% increase raises ";
string wt = boost::lexical_cast<string> (weight);
gain = gain + wt + " to "; // string operator()
weight = 1.1 * weight;
gain = gain + boost::lexical_cast<string>(weight) + ".";
cout << gain << endl;
return 0;
}
點選編譯執行,執行結果如下:
至此完成boost庫的安裝。