1. 程式人生 > 其它 >VsCode + mingw編譯器下boost庫的安裝

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庫的安裝。