我的系統是Ubuntu14.04,按照網上的教程安裝好Boost。
今天是第一次使用Boost庫的,在看了官方文檔楞是沒搞懂,如是在找了個簡單的例子,看看代碼以理解thread是怎麼簡單使用的。結果在編譯這個例子的時候(也是按照作者的方法)出現了問題,google了一把,沒找到(主要是英文,看著頭痛,而且也是剛入手linux系統,有些老外講的太高端了沒看懂怎麼回事),然後百度,找到了一個類似的文章,看到了別人的解決方法才開始明白,同時也明白了在看Boost官方文檔時的幾個困惑。
在Boost官方文檔中支持thread庫對幾個其他的庫有依賴關系(官方原文):
這是我開始時的編譯命令:g++ thread_01.cpp -o thread_01 -lboost_thread
結果出現了問題
造成這個問題的原因是,前面說的thread的庫依賴了幾個其他的庫,所以導致編譯鏈接時出現問題,可以看出缺少的是lboost_system.so.1.60.0也就是system庫。所以要解決這個問題就需要在編譯時加上這個庫。
這是正確的編譯命令:g++ thread_01.cpp -o thread_01 -lboost_thread -lboost_system
Ubuntu下編譯安裝boost庫 http://www.linuxidc.com/Linux/2013-07/87573.htm
Ubuntu下編譯boost 1.52b http://www.linuxidc.com/Linux/2013-02/79004.htm
VS2008下直接安裝使用Boost庫1.46.1版本 http://www.linuxidc.com/Linux/2014-08/105253.htm
Ubuntu編譯安裝boost並在eclipse C/C++中使用 http://www.linuxidc.com/Linux/2011-04/34790.htm
Boost 的詳細介紹:請點這裡
Boost 的下載地址:請點這裡
更多Ubuntu相關信息見Ubuntu 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=2