當前位置:首頁 » 編程軟體 » 編譯boost庫

編譯boost庫

發布時間: 2023-08-13 04:24:04

A. windows boost庫要編譯多久

vc的話有編譯好的,mingw的話也有,不過不是最新版的,自己編譯找教程吧,大概是先編譯一個bjam的文件出來,然後用它編譯boost,挺快的,其實沒有某些教程說的幾個小時,我的i5-460M大概是編譯了大半個小時,boost1.56

B. windows boost 32位怎麼編譯

方法1.運行腳本vsvars32.bat:
D:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\vsvars32.bat
這個批處理 主要就是在運行CMD的時候先為我們設置一下環境變數(臨時的) (這個腳本中寫入的是bin, lib,include , tools的路徑信息,也可以自己配置)

方法2.設置系統環境變數:
電腦右鍵屬性-->高級環境變數-->系統環境變數選擇PATH 編輯,將以下內容復制追加:
;D:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE;D:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools;D:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin;D:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\vcpackages;C:\Windows\Microsoft.NET\Framework64\v4.0.30319;C:\Windows\Microsoft.NET\Framework64\v3.5;C:\Windows\Microsoft
環境變數生效可能需要重啟計算機。

C. Linux下G++怎麼編譯使用Boost庫的程序

首先把Boost庫的頭文件存放到/usr/include/boost/路徑下,再把Lib文件存放到/usr/local/lib/boost/路徑下。修改/etc/profile文件,在此文件中增加如下2個環境變數:

BOOST_INCLUDE=/usr/include/boost
export BOOST_INCLUDE

BOOST_LIB=/usr/local/lib/boost
export BOOST_LIB

寫一個如下所示的cpp文件。
//samlpe.cpp
#include <iostream>
#include <string>
#include <boost/thread.hpp>

using namespace std;

void threadRoutine(void)
{
boost::xtime time;
time.nsec = 0;
time.sec = 20;
cout << "線程函數做一些事情" << endl;
boost::thread::sleep(time);
}

int main(void)
{
string str;
cout << "輸入任意字元開始創建一個線程..." << endl;
cin >> str;
boost::thread t(&threadRoutine);
t.join();
cout << "輸入任意字元結束運行..." << endl;
cin >> str;
return 0;
}

保存。使用g++編譯,命令如下所示:

g++ -o samlpe.out samlpe.cpp -I$BOOST_INCLUDE -L$BOOST_LIB -lboost_thread-gcc-mt

其中-I參數指定Boost頭文件路徑,-L參數指定Boost庫文件路徑,-l參數指定使用線程庫名。在我使用的這個版本Boost里,到/usr /local/lib/boost路徑下,可以看到有關Boost線程庫文件,比如:libboost_thread-gcc-mt.a等。注意在用-l 參數指定庫名時把磁碟文件名前面那個lib前綴去掉就可以了。

D. 安裝了多個版本vs怎麼編譯boost

boost有些庫是不用安裝的,僅需包含頭文件庫就行了。
但是有些很爽的庫(thread,regex)需要根據不同的系統做不同的調整,所以必須編譯。
編譯的流程很簡單,如果是windows操作系統,首先找到那個booststrap.bat的東西,然後在控制台下運行它,它會生成bjam.exe,然後就可以通過bjam來編譯boost庫了,在命令行下輸入bjam --help看選項。

如果嫌麻煩,可以一次將boost庫需要編譯的全部編譯了,bjam --build-type=complete,生成庫全在stage目錄下。

E. windows下boost怎樣安裝與使用說明

1. 概述

最近打算學習一下Boost庫,這里記錄一下Boost庫的安裝的方法,IDE涉及DEV C++和VS 2008。

2. 下載

直接下載鏈接:參見網頁 http://www.boost.org/users/history/version_1_46_1.html,這里的鏈接網速很慢,78MB的東西,下載了10%左右,就定住了,試了三次都是這樣,基本放棄了這個下載鏈接。
SVN下載鏈接,文件保存在「D:\Boost」下:參見網頁 http://www.boost.org/users/download/,有一定速度,下載使用了49分鍾,傳了115.99MB,版本為1.47,我看了下下載的文件夾,嚇了我一跳:文件夾大小501MB,佔用空間3.15GB。趕緊去網上查了下,有的人說對於1.46版本的Boost,如果完全編譯後,可能需要12-15GB的空間,這樣就不奇怪了,雖然還沒編譯就佔了3GB。

3. VS2008 Boost庫編譯(-vc9)

首先,編譯bjam,在命令行下,運行bootstrap.bat -vc9
然後,編譯庫。在命令行下,運櫻碼行:

bjam stage --toolset=msvc-9.0 --without-graph --without-graph_parallel --without-math --without-mpi --without-python --without-serialization --without-wave --stagedir="D:\Boost\bin\vc9" link=static runtime-link=shared threading=multi debug release
bjam stage --toolset=msvc-9.0 --without-graph --without-graph_parallel --without-math --without-mpi --without-python --without-serialization --without-wave --stagedir="D:\Boost\bin\vc9" link=static runtime-link=static threading=multi debug release
編譯用了50分鍾左右,產生了303MB的文件。

4. VS2008 Boost庫配置

Tools -> Options -> Projects and Solutions -> VC++ Directories
在Library files中,增加D:\Boost\bin\vc9\lib
在Include files中,增加D:\Boost\
其中,Library的目錄就是前面編譯產生的那些庫文件保存到的位置
其中,Include的目錄隨著Boost的不同版本會不同,現在1.47版本只要指定為D:\Boost即使用SVN下載Boost的文件夾就可以了。

5. VS2008 Boost庫測試

View Code
6. DEV C++ Boost庫編譯

首先,設置gcc的環境變數。在我的電腦上點擊右鍵,選擇Properties菜單項。型鬧然後在彈出的對話框中選擇Advanced頁脊租哪,點擊Environment Variables按鈕。之後進行如下設置,選擇PATH,然後點擊Edit按鈕,在最後加上DEV-C++編譯器的路徑,如C:\Program Files\DEV-CPP\Bin,路徑之間用分號分隔。 設置完畢點擊OK按鈕保存。
然後,編譯bjam,運行bootstrap.bat -gcc
接著,編譯boost庫:

bjam stage --toolset=gcc --without-graph --without-graph_parallel --without-math --without-mpi --without-python --without-serialization --without-wave --stagedir="D:\Boost\bin\gcc" link=static runtime-link=shared threading=multi debug release
bjam stage --toolset=gcc --without-graph --without-graph_parallel --without-math --without-mpi --without-python --without-serialization --without-wave --stagedir="D:\Boost\bin\gcc" link=static runtime-link=static threading=multi debug release
7. DEV C++ Boost庫配置

在Toos->Compiler Options->Directories->C++ Include中,增加D:\Boost
8. DEV C++ Boost庫測試

第一種,只要包含該頭文件即可,就能使用該頭文件中的所有函數。

View Code
第二種,需要建立一個project,而不能只是編譯單個的c++文件,因為在dev c++中,只有在project中才能設置linker的參數。 建立project後,「Project"-->"Project Options"-->"Parameters"選項卡--->在linker框中添加:"-lboost_regex-mt",告訴linker在鏈接的時候,鏈接regex庫。

View Code
9. 參考文獻

Boost下載安裝編譯配置使用指南(含Windows和Linux) http://kb.cnblogs.com/a/1485890/
VS2008中編譯Boost 1.38 http://blog.csdn.net/wrx_2009/archive/2009/06/04/4242841.aspx
VS2008 Team System 安裝Boost庫 http://www.cookbus.com/show-121-1.html
boost在DevC++中的安裝過程 http://blog.csdn.net/suwei19870312/archive/2011/03/13/6246400.aspx

F. 如何編譯libboost

您好,這樣的:
1、當前boost最新版本為1.55,下載地址http://sourceforge.net/projects/boost/files/boost/1.55.0/
或者從官網(www.boost.org)下載最新版的BOOST源碼,經過測試,2012和2013步驟相同,這里以2012為例。
2、打開VS2012 Native Tools Command,可以從開始--Microsoft Visual Studio 2012找到:將下載的 boost_1_55_0.zip 解壓在F盤,例如 F:\boost_1_53_0,執行bootstrap.bat。
3、編譯,可以簡單的使用b2 install,也可以指定存放目錄,或者尋找網上其它幫助文章。
查看幫助可以輸入:.\b2 --help
比如要開啟多線程編譯:b2 install threading=multi
設置生成的是debug或者release
備註:如果是使用VS2013,請指定輸出庫類型,否則會缺一個lib文件:
"無法打開文件 libboost_thread_vc120_mt_sgd-1_55.lib"。
在2013時,我是使用下面的語句進行編譯:
// 如果要獲取動態庫:
bjam install stage --toolset=msvc-12.0 --stagedir="C:\Boost\boost_vc_120" link=shared runtime-link=shared threading=multi debug release
// 如果是要獲取靜態庫:

bjam install stage --toolset=msvc-12.0 --stagedir="C:\Boost\boost_vc_120" link=static runtime-link=static threading=multi debug release

其中,注意修改--toolset=msvc-12.0,將12.0修改成對應的vs版本號,12.0是VS2013的版本號。

目標地址也要修改成你所需的。

注意,不要漏了install,它會幫你把頭文件集合到一個文件夾中。
編譯過程有一個復制過程,編譯需要的時間比較長,本次編譯過程中,會在C盤根目錄下生成一個boost文件夾,然後包含include和lib文件夾,這就是我們將要使用的頭文件和庫文件。

4、編譯完了我們就使用編譯在C盤中的文件。我將它們拷貝到了F盤,
需要簡單的配置兩個地方:這里使用絕對路徑,也可以配置環境來使用。
5、然後建立了一個工程測試。 在BoostTest中新建一個控制台應用程序,下圖三個文件分別是:
1) 將要使用的boost頭文件和庫文件。 2) 解壓出的boost文件夾,就是使用這個文件夾來進行 1 -- 3步驟的。 3)BoostTest 測試工程。
#include <iostream>

#include <boost/thread/thread.hpp>
void hello()
{
std::cout << "Hello world, I'm a thread!" << std::endl;
}
int main()
{
boost::thread thrd(&hello);
thrd.join();
}
編譯測試工程, 並運行,開始boost之旅吧。

熱點內容
安卓哪個國家免費用 發布:2025-02-04 22:39:54 瀏覽:59
電腦配置低但想玩小偷模擬器怎麼辦 發布:2025-02-04 22:39:03 瀏覽:233
最快腳本語言 發布:2025-02-04 22:27:23 瀏覽:527
安卓的人臉識別在哪裡 發布:2025-02-04 22:16:45 瀏覽:674
悠然伺服器的ip是什麼 發布:2025-02-04 22:10:17 瀏覽:65
3des源碼 發布:2025-02-04 22:09:16 瀏覽:809
如何備份資料庫表 發布:2025-02-04 22:09:07 瀏覽:294
如何刪除下載的鬧鍾鈴聲安卓 發布:2025-02-04 22:03:35 瀏覽:659
死神腳本 發布:2025-02-04 21:57:03 瀏覽:168
phpposthtml 發布:2025-02-04 21:37:46 瀏覽:89