1. 程式人生 > >Mac平臺下boost安裝及使用

Mac平臺下boost安裝及使用

轉載連結

http://blog.csdn.net/xujiezhige/article/details/8230493

方法一:

  1. 去Macports官網的下載頁面(https://distfiles.macports.org/MacPorts/)下載對用Mac系統的pkg檔案,下載完成之後,雙擊,一路【下一步】,到安裝按成。
  2. 開啟一個新終端:輸入sudo port install boost,提示輸入密碼,輸入你當前使用的賬號的密碼(注意終端中輸密碼不會有任何顯示提示,即輸入的密碼不會顯示),回車,Macports會全自動下載,安裝並編譯需要單獨編譯的部分boost庫。時間有點長,你可以放這去幹點別的了。
  3. 開啟Xcode,新建一個工程,【OS X】-》【Application】-》【Command Line Tool】,建立此類工程。
  4. 將此預編譯指令加入main檔案中測試#include <boost/asio.hpp>,會發現標頭檔案找不到。這是因為新建的工程沒有配置為使用boost庫。此時我們需要點選【專案工程檔案】-》【Targets】-》【BuildSetting】-》【Search Paths】-》【Header Search Paths】,輸入/opt/local/include,這樣標頭檔案能找到,再新增庫檔案搜尋路徑,再【Search Paths】-》【Library Search Paths】,輸入/opt/local/lib。
  5. 上面添加了標頭檔案和庫檔案搜尋目錄後,點選執行,仍然無法通過編譯,我這邊是彈出錯誤,undefined reference to `boost::system::system_category(),這可能是連線不到對應的庫,點選【專案工程檔案】-》【Targets】-》【Build Phases】-》【Link Binary with Libraries】,點選下側的+號,新增
    libboost_system.a,點選Add Another...,到/opt/local/lib中選擇libboost_system-mt.a,在次點選下側的+號,新增libboost_filesystem.a,點選Add Another...,到/opt/local/lib中選擇libboost_filesystem-mt.a,這樣就新增兩個庫檔案。
  6. 我這裡通過這幾步終於可以使用boost庫,boost官方網站上的asio的Tutorial例子就可以照著程式設計了。

方法二:

  • 就是照著boost庫的官方網站一步一步來,我一開時使用這個方法,但遇到了一些問題,後來就用方法一了。