MinGW and boost on windows

2010/10/13
~ 阿亮 ~

安裝 MinGW and Boost 於 Windows 上之筆記

一、安裝 MinGW.

下載 MinGW-get  installer, 將下載的目錄 (比如 mingw-get-0.1-mingw32-alpha-4-bin/),拷貝到 C: 並改名為 C:\\MinGW,環境變數 PATH 加上 C:\MinGW\bin\,並到該目錄下執行

bin\mingw-get.exe install gcc g++ mingw32-make gdb

這個步驟是下載套件並安裝,我遇到會有 FAIL 的訊息,所以,多執行幾次,到沒有 Error 訊息。(PS: 這點蠻怪的)

 C:\MinGW\bin\mingw32-make  拷貝一份改成 C:\MinGW\bin\make

2010.10 註:另一個不錯的 TDM-MinGW  的版本,有提供 64/32bits 的版本。真的比官方的正常多了 XD

 

二、安裝 Boost,下載並目錄解壓縮至

C:\boost_1_44_0

執行下述

bjam --with-thread --with-graph link=static link=shared threading=single threading=multi toolset=gcc address-model=32 stage

–with-<package> 是除了基本 boost 之外,看要額外裝什麼。

address-model=32/64 在 64 bits 環境下,要編繹成 32 bits,用此參數

stage 是最後產生 library 的目錄

PS: Boost 用 MinGW with gcc4.6 會有問題,用 MinGW with gcc3.4 是 OK 的。

PS: 用 TDM-MinGW with gcc4.5.1 OK.

 

三、用 boost::thread 會遇到這兩個問題。問題一 及問題二 。 (for boost_1_44_0)

 

2010.10.18 補。用 TDM-MingGW 編繹 boost 仍有很多問題,比如 boost:thread  with 64bits.

2010.10.19 補。不論 mingw, tdm-mingw 都會造成我一些程式當掉,改用 cygwin 似乎就沒有該問題… (不解!)

 

For MSVC:

error C2143: syntax error : missing ';' before 'string'

檔頭的 class XXX {};  

最後分號不能漏掉!

 

error C2601: 'xxx' : local function definitions are illegal

將該檔另存 UTF8 with signature, 而且 Line ending 選 Windows (CR LF)

PS: stupid? but work! XD

 

Boost 可以選 BoostPro .

Code::Blocks  是還蠻好用的 IDE.



歡迎留言

敝站會審核留言的適宜性,您的留言可能會較晚發佈,而且小弟保留刪除的權利!!

站內搜尋



本站其他服務

本站其他軟體



  • 當令蔬果花卉(AgriInfo)

    是不是常常在超市看到水果蔬菜的價格,總是不確定是當季蔬果?這個服務就是幫你很快判斷眼前的蔬果花卉的價格是否便宜。


  • 油價快訊App (OilPrices)

    依據油價及匯率,估算台灣下週油價,另外提供三週、一年以及三年的歷史變化,以及週末下午推播通知最新油價預估或公告。


  • 下一班高鐵 (nextTHSR)

    這個 app 只要開啟後,就根據定位幫你過濾出最近高鐵站的時刻表,不用再按任何按鈕了,方便您在很快時間內確定要坐的哪一班高鐵


  • 批踢踢快訊 (pttNews)

    身為鄉民的您,是不是常常覺得現在的批踢踢 (PTT) 閱讀器,明明您就只要看幾個板,都幫您分類好,但不是您要的?甚至您只想關注某個人(或某件事)的消息,卻散布在不同東西,找出來很辛苦? 這個 App 可以解決您這些問題,快來用吧!


  • 下一班公車(nextBus)

    這個 app 只要開啟後,就根據定位幫你過濾出附近站牌的時刻表,以及提供相關公車預計到站的時間,方便您在很快時間內確定要坐的哪一班公車


  • 下一班火車 (nextRail)

    這個 app 只要開啟後,就根據定位幫你過濾出最近火車站的時刻表,不用再按任何按鈕了,方便您在很快時間內確定要坐的哪一班火車