Mac下Boost環境搭建


  Boost,一個功能強大、跨平台、開源而且免費的C++程序庫,可以在其官網了解更多:http://www.boost.org,C++標准經過不斷的升級完善,現在已經功能越來越吸引人了,Boost開發過程中也吸引了很多C++11新特性,從而更兼容C++的標准庫了,這樣,有什么理由不用它呢?雖然很多東西我們可以自己寫,但是,借助功能穩定的庫,可以提高生產力,節約程序員的時間,何樂不為?當然,並非讓我們只是調用函數,傳參數,完成任務就行了,如果不去了解下背后原理,那只能稱之為碼農,而不是程序員了。

  由於開發環境基於Mac,那就基於它來搭建一個開發平台,來體驗boost庫的設計美妙和功能強大吧~:

  1. 首先,需要下載boost的源碼包,可以從官網下載,也可以這里下載:boost_1_60_0.tar.bz2

  2. 解壓,目錄結構如下:

    

    boos子目錄下就是其源碼了,它們按照功能划分,很清晰。

  3. 編譯。編譯器至少應支持C++98標准,這里使用gcc編譯器,如下:

    

  4. 安裝:

    執行解壓目錄下文件進行配置:"./bootstrap.sh"

    執行"sudo ./b2 --buildtype=complete install"進行boost所有庫的安裝,在mac下安裝后頭文件路徑為:/usr/local/include/boost,庫路徑為/usr/local/lib

  5. 構建工具安裝

    構建工具可以使用make、cmake等,這里使用boost自帶的b2,它使用jamroot來配置、管理代碼,然后每個模塊子目錄下都有jamfile。

    cd tools/build

    ./booststrap.sh

    sudo ./b2 install

  6. 測試代碼:

    

  7. 編譯運行:

    目錄結構如下:

    

    jamroot和jamfile文件內容分別如下:

    

    jamroot說明了整個目錄結構的編譯規則,jamfile說明了文件的執行輸出,如exe,unit-test等,現在需要測試main.cpp,進入te目錄下執行b2命令即可,輸出,執行后目錄結構如下:

    

    可以看到,在jamfile聲明了unit-test,在執行b2命令時也進行了單元測試,這里默認生成debug版本的輸出文件,如果要發布,執行"b2 release"即可。這里看到輸出boost版本為106000,現在可以使用boost來進行開發了。

    (也可以執行"g++ -o main.out main.cpp",注意,在ubuntu下需要加上-Istdc++,即:g++ -o main.out main.cpp -Istdc++)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM