2010-01-12 79 views
11

這裏有一個問題,你可能已經看到了圍繞'各種形式的網...在這裏總結爲你googling樂趣:-)如何獲得與Visual Studio一起使用的Boost庫二進制文件?

我有一個項目,是用微軟的Visual Studio構建,並使用boost( http://www.boost.org/)。我已經有我的項目與一些只有標題的庫(不需要鏈接的二進制庫)一起工作。如何或在哪裏可以獲得其他庫的Windows二進制文件?

+5

請參閱boost.org上的入門文檔:http://www.boost.org/doc/libs/1_41_0/more/getting_started/windows.html – 2010-01-12 15:20:19

回答

19

訪問二進制庫有三種不同的選項:

1)從源代碼構建它們。
進入升壓目錄,然後運行:

bootstrap 
    .\bjam 

或者獲得更多的複雜,這樣做:

bjam --stagedir="c:\Program Files\Boost" --build-type=complete --toolset=msvc-9.0 --with-regex --with-date_time --with-thread --with-signals --with-system --with-filesystem --with-program_options stage 

2)使用BoostPro安裝程序(http://www.boostpro.com/download),以獲得特定的庫,你需要。
這是非常好的,因爲它只下載和安裝你說你想要的文件。但是,它從來沒有可用的最新版本,並且沒有64位二進制文​​件。

3)下載整組庫(http://boost.teeks99.com
使用方便,簡單,做的,但庫是巨大的(7GB解壓縮!)。
編輯2013-05-13:我的版本現在可以直接從sourceforge page獲得(從1.53開始)。

+3

爲什麼你問一個問題,然後在5分鐘後給你自己的問題提供一個3分的答案?你只是通過問簡單的問題然後自己回答他們來耕種代表? – Roel 2010-01-12 15:22:58

+6

我看過一堆人以不同的形式提出這個問題,有時候不知道該怎麼問。我只是想以清楚的方式把它弄清楚,這樣任何人都可以找到它。 – teeks99 2010-01-12 15:25:33

+2

我沒有看到你在做什麼錯。雖然也許你應該明確地說,這是其他問題的混合,所以人們可以自己決定是否想投票支持你的編輯工作。 – 2010-01-12 22:02:02

1

自己建造它們。來自升壓網站下載的bjam可執行文件,然後從升壓SRC根目錄中執行以下命令:

的bjam --toolset = MSVC --build型=完全限定= _BIND_TO_CURRENT_MFC_VERSION = 1限定= _BIND_TO_CURRENT_CRT_VERSION = 1階段

然後去喝點咖啡,或讓它在夜間運行。之後,你會在'stage'文件夾中得到結果。將此目錄添加到options-> projects和solutions-> VC++目錄中的'庫文件'中。

+0

爲了澄清,_BIND_TO_CURRENT_MFC_VERSION將在稍後部署時防止出現問題;在http://stackoverflow.com/questions/59635/app-does-not-run-with-vs-2008-sp1-dlls-previous-version-works-with-rtm-versions/70808查看我對另一個問題的回答#70808。 – Roel 2010-01-12 15:20:46

1

我以前更喜歡使用BoostPro來安裝需要單獨編譯的Boost庫,比如Boost.Regex,但是可惜這似乎不再受支持。

轉到Boost Getting Started for Windows頁面,它告訴你幾乎所有你需要知道的在section 5.2.1。這裏有一個simple guide(帶截圖),向你展示如何開始。

總之,從你需要運行下面的命令在命令提示符:

> boostrap.bat 
> .\b2 

運行\ B2命令可能需要相當長一段時間。

,然後在Visual Studio項目的屬性,你需要:

  1. 選擇C/C++> General選項卡,並設置附加包含目錄字段
  2. 選擇鏈接>常規選項卡,設置其他庫目錄字段。

對於第2步,這通常是Boost根目錄的stage \ lib目錄。

3

暢達鍛(自動跨平臺的雲構建工具和包管理器)提供的二進制文件的所有主要平臺:

http://sourceforge.net/projects/boost/files/boost-binaries/

https://anaconda.org/conda-forge/boost

你現在可從升壓二進制

但是,它們並未指定它是發行版還是調試版。

+2

這些與http://boost.teeks99.com上的相同(我已經成爲官方二進制生成器)。它們包含調試版本。 – teeks99 2014-08-29 20:07:51

0

1)導航提振目錄

2)運行引導 - 注意:的bjam不會出現在這一點上工作,但也許我做錯了什麼

3)運行\ B2這一點。應該設置提升默認爲什麼它檢測爲您的主要或最新的Windows工具集,所以對我來說這是msvc11.0

然後你等一會兒,瞧!

如上所述,只包括boost庫的目錄(D:\ boost_1_5x_x \ stage \ lib),並且包括您在各自的Additional Directories字段中使用的目錄。您不需要從「C/C++」或「Linker」中執行此操作。有一個標題VC++,其中包含所有相關字段。你也可以,如果你經常使用boost,將它們包含在繼承目錄列表中

**編輯:只是意識到上面的帖子概述了這一點。很抱歉。

相關問題