實戰Windows下安裝boost

Boost大部分組件無需編譯可直接包含頭文件使用,但還有一些庫需要編譯成靜態庫或動態庫才能使用。可使用下文將提到的bjam工具:bjam --show-libraries 查看必須編譯才能使用的庫。

編譯安裝環境:Win7,VS2008(msvc-9.0)

1. 下載boost安裝包,我前下載的是1.51版的;

(英文版安裝幫助:http://www.boost.org/doc/libs/1_51_0/more/getting_started/windows.html#or-build-from-the-command-prompt)

2. 解壓至D:\boost;

3. 啟動Visual Studio 2008 Command Prompt,切換至解壓文件目錄,運行bootstrap.bat,得到bjam.exe工具;

(Boost的編譯不使用標準make,而是專門的工具bjam [boost jam])

4. 運行bjam編譯:

  bjam --toolset=msvc-9.0 --build-type=complete

  toolset選項指定編譯器,如Microsoft的msvc、GNU的gcc、Apple Computer的darwin等;

  (這里需要指出你所使用的編譯器版本,VC2008是9.0,VC2010是10.0,英文版安裝幫助文檔中也以字體加粗形式強調在windows下要指出編譯器版本。)

  build-type選項為編譯類型,當前選擇的是完整編譯;完整編譯需時較長,我機器運行了45分鐘左右。也可單獨選擇特定組件編譯。

5. 編譯完成,可配置VS2008 Tools > Options > Projects and Solutions > VC++ Directories頁,選擇Include files,將d:\boost\目錄加到最前。

?

最后為當前project配置項目屬性:

  • Properties > Configuration Properties > C/C++ > General > Additional Include Directories,輸入boost根目錄如的d:\boost\boost_1_51_0

  • Configuration Properties > C/C++ > Precompiled Headers, 變Use Precompiled Header (/Yu)?為 Not Using Precompiled Headers.

?

我因為想在命令行直接調用cl編譯,就把boost\bin.v2下的所有.lib和.dll文件全部搜索出來,總共208+50=258個文件拷貝到單獨的目錄,并在環境變量中新增一條lib記錄,值為該目錄(d:\boost\boost_1_51_0\vc9lib),之后cl /EHsc xxx.cpp 才找得到庫文件使調用成功。不知道有沒有其它更簡便的途徑。

  

轉載于:https://www.cnblogs.com/edgarli/archive/2012/10/29/windows_boost_compile.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/377136.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/377136.shtml
英文地址,請注明出處:http://en.pswp.cn/news/377136.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

postgresq dur_DUR的完整形式是什么?

postgresq dur杜爾(DUR):您還記得嗎? (DUR?: Do You Remember?) DUR? is an abbreviation of "Do You Remember?". DUR? 是“您還記得嗎?”的縮寫。 。 It is an expression, which is commonly used in messaging…

gsettings-desktop-schemas : 破壞: mutter (< 3.31.4) 但是 3.28.4-0ubuntu18.04.2 正要被安裝解決方案

完整報錯: dyydyy-Lenovo-ThinkBook-14-IIL:~$ sudo apt install build-essential 正在讀取軟件包列表... 完成 正在分析軟件包的依賴關系樹 正在讀取狀態信息... 完成 有一些軟件包無法被安裝。如果您用的是 unstable 發行版,這也許是 因…

程序內存檢測

本文參考自:http://www.cnblogs.com/hebeiDGL/p/3410188.html static System.Windows.Threading.DispatcherTimer dispacherTimer;static string total "DeviceTotalMemory";static string current "ApplicationCurrentMemoryUsage";static s…

動態規劃天天練1

本來很久以前就打算每天練一道動態規劃題的,但每每由于作業太多而中斷,現在終于停課了......廢話不多說,第一道題就給了我迎頭一棒,不僅想了很久,連題解都看了很久。。。水平相當不足啊啊,不多說廢話&#…

AAS的完整形式是什么?

AAS:活著和微笑 (AAS: Alive And Smiling) AAS is an abbreviation of "Alive And Smiling". AAS是“活著和微笑”的縮寫 。 It is an expression, which is commonly used in messaging or chatting on social media networking sites like Facebook, Y…

《MySQL 8.0.22執行器源碼分析(1)——execute iterator一些記錄》

目錄一條語句的函數調用棧順序8.0使用迭代器模式改進executorint *handler*::ha_rnd_next(*uchar* **buf*)int *TableScanIterator*::Read()int FilterIterator :: Read()int HashJoinIterator::Read()int NestedLoopIterator :: Read(&#…

關于autoupgader的狗屎問題

由于win7和xp的權限問題,導致這個自動升級玩意不正常。這個狗屎問題很簡單,把exe文件的兼容性設定該一下。真是氣死灑家了。轉載于:https://www.cnblogs.com/usegear/p/3679097.html

strcspn函數

函數原型&#xff1a;extern int strcspn(char *str1,char *str2) 參數說明&#xff1a;str1為參照字符串&#xff0c;即str2中每個字符分別與str1中的每個字符比較。 所在庫名&#xff1a;#include <string.h> 函數功能&#xff1a;以str1為參照&#xff0c…

c語言 sqlite_SQLite與C語言

c語言 sqliteSQLite數據庫簡介 (Introduction to SQLite database) SQLite is a relational database; it is used for embedded devices. Now a day it is using worldwide for different embedded devices. SQLite是一個關系數據庫。 它用于嵌入式設備。 如今&#xff0c;它已…

《MySQL 8.0.22執行器源碼分析(2)解讀函數 ExecuteIteratorQuery》

函數代碼 bool SELECT_LEX_UNIT::ExecuteIteratorQuery(THD *thd) {THD_STAGE_INFO(thd, stage_executing);DEBUG_SYNC(thd, "before_join_exec");Opt_trace_context *const trace &thd->opt_trace;Opt_trace_object trace_wrapper(trace);Opt_trace_object…

C語言,如何產生隨機數

1. 基本函數 在C語言中取隨機數所需要的函數是: int rand(void);void srand (unsigned int n); rand()函數和srand()函數被聲明在頭文件stdlib.h中,所以要使用這兩個函數必須包含該頭文件: #include <stdlib.h> 2. 使用方法 rand()函數返回0到RAND_MAX之間的偽隨機數(pse…

MongoDB源碼概述——內存管理和存儲引擎

數據存儲&#xff1a; 之前在介紹Journal的時候有說到為什么MongoDB會先把數據放入內存&#xff0c;而不是直接持久化到數據庫存儲文件&#xff0c;這與MongoDB對數據庫記錄文件的存儲管理操作有關。MongoDB采用操作系統底層提供的內存文件映射&#xff08;MMap&#xff09;的方…

OBTW的完整形式是什么?

OBTW&#xff1a;哦&#xff0c;順便說一下 (OBTW: Oh, By The Way) OBTW is an abbreviation of "Oh, By The Way". OBTW是“哦&#xff0c;順便說一下”的縮寫 。 It is an expression, which is commonly used in messaging or chatting on social media network…

SharePoint 2010 Form Authentication (SQL) based on existing database

博客地址 http://blog.csdn.net/foxdaveSharePoint 2010 表單認證&#xff0c;基于現有數據庫的用戶信息表本文主要描述本人配置過程中涉及到的步驟&#xff0c;僅作為參考&#xff0c;不要僅限于此步驟。另外本文通俗易懂&#xff0c;適合大眾口味兒。I. 開啟并配置基于聲明的…

《MySQL 8.0.22執行器源碼分析(3.1)關于RowIterator》

目錄RowIteratorInit()Read()SetNullRowFlag()UnlockRow()StartPSIBatchMode()EndPSIBatchModeIfStarted()real_iterator()RowIterator 使用選定的訪問方法讀取單個表的上下文&#xff1a;索引讀取&#xff0c;掃描等&#xff0c;緩存的使用等。 它主要是用作接口&#xff0c;但…

hdu 2432法里數列

這題本來完全沒思路的&#xff0c;后來想一想&#xff0c;要不打個表找找規律吧。于是打了個表&#xff0c;真找到規律了。。。 打表的代碼如下&#xff1a; int n; void dfs(int x1, int y1, int x2, int y2) {if (y1 y2 < n) {dfs(x1, y1, x1 x2, y1 y2);printf("…

python學習筆記四——數據類型

1.數字類型&#xff1a; 2.字符串類型&#xff1a; 切片&#xff1a;a[m:n:s] m:起始值 n:結束值&#xff08;不包括n&#xff09; s:步長&#xff0c;負數表示從后向前取值 3.序列&#xff1a;列表&#xff0c;元組和字符串都是序列 序列的兩個主要特點是索引操作符和切片…

小狐貍ChatGPT系統 不同老版本升級至新版數據庫結構同步教程

最新版2.6.7下載&#xff1a;https://download.csdn.net/download/mo3408/88656497 小狐貍GPT付費體驗系統如何升級&#xff0c;該系統更新比較頻繁&#xff0c;也造成了特別有用戶數據情況下升級時麻煩&#xff0c;特別針對會員關心的問題出一篇操作教程&#xff0c;本次教程…

《MySQL 8.0.22執行器源碼分析(3.2)關于HashJoinIterator》

在本文章之前&#xff0c;應該了解的概念&#xff1a; 連接的一些概念、NLJ、BNL、HashJoin算法。 目錄關于join連接probe行保存概念Hashjoin執行流程&#xff08;十分重要&#xff09;HashJoinIterator成員函數講解1、BuildHashTable2、ReadNextHashJoinChunk3、ReadRowFromPr…

json 語法_JSON的基本語法

json 語法JSON which stands for JavaScript Object Notation is a lightweight readable data format that is structurally similar to a JavaScript object much like its name suggests. 代表JavaScript Object Notation的 JSON是一種輕量級的可讀數據格式&#xff0c;其結…