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.



站內搜尋



本站其他服務

本站其他軟體



  • 批踢踢快訊 (pttNews)

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


  • 藝文快訊

    讓你可以輕鬆追蹤含有您想要關注關鍵詞的任何藝文活動訊息,只要有最新的資訊,「藝文快訊」即會推播通知給你.


  • 台灣匯率快算

    提供全球 150 種以上貨幣即時換算,以及各種匯率歷史變化圖。


  • 下一班公車(nextBus)

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


  • 台灣空污警報(AirInfo)

    設定特定站點為推播通知關注點後,當該站點空氣品質變糟時,即時推播通知給您。另外提供站點附近基本天氣預測資料。


  • 下一台單車(NextBike)

    打開定位即搜尋附近二十點自行車站點,不塞滿全部站點資料到整個地圖上,所以畫面簡潔方便看清楚目前所在地,若需要搜尋地圖其他位置附近站點,再點擊地圖即可。