win7下vs2012編譯boost庫的問題記錄

2021-10-08 08:41:47 字數 653 閱讀 6304

編譯遇到的問題

1、win7 64位

2、vs2012,msvc11.0

3、boost庫v1.73.0

(1)網上找乙個該檔案。

(2)若安裝過mingw,mingw\x86_64-w64-mingw32\include 可找到該檔案。

(3)該檔案拷貝至 tools\build\src\engine下。

解決:替換為上下文**現的 _win32_winnt_win7 字樣的符號即可。

原因:vs2012支援c++11之前的標準(c++98/c++03),只有靜態常量整型資料成員才可以在類中初始化。類定義只是乙個框架,不是例項,不會分配儲存空間,不會給它的成員變數賦值。只有類被例項化時,即建立物件,才會分配記憶體,才會給其成員變數賦值。靜態常量整型資料成員是乙個特例。可以通過建構函式實現類內非靜態常量整型資料成員的初始化。

c++11(vs2013版本及以後方可支援c++11)新標準規定:可以為資料成員提供乙個類內初始值,建立物件時,類內初始值將用於初始化資料成員。沒有初始值的成員將被預設初始化。

解決:(0)檔案位於 tools\build\src\engine下。

(1)標頭檔案40行找到變數的定義,去掉賦值操作,保留定義。

(2)同目錄下對應的cpp檔案中32行,在類的初始化函式中對該2個變數賦值為0。

VS2012開發可執行在win7和xP的程式

預設情況下,你的vs2012工程發布後,在xp下執行會出現 update 3是個安裝包,可拷貝移動,更好些 然而就算你打了補丁,你的程式在xp下可能還會出現 無法定位程式輸入點 addclipboard formatlistener 於動態鏈結庫 kernel32.dll 上 這樣的錯誤提示。這是因...

VS2012編譯WDM驅動

新版的vs2012中整合了wdk8,而且wdk8中已經沒有之前的build environment了,看來編譯驅動只能通過vs2012了,直接開發wdf驅動很方便直接選取相應的模板即可,若是編譯以前的wdm驅動,則需要做一下轉換,具體步驟如下 開啟vs2012,file open convert s...

mongodb C 驅動VS2012編譯

2 安裝boost庫 1.49版本 解壓後雙擊bootstrap.bat,生成bjam.exe後,cd到目錄c boost下,將boost 1 49更名為boost了 編譯boost。編譯命令 c boost bjam variant release with filesystem with thr...