2017-08-10 52 views
0

我想編譯一些代碼。我安裝了升壓使用配置:錯誤:無法鏈接到libboost_atomic

brew install boost 

其中成功完成。然後我跑

autoreconf --install 

,然後讓我跑

./configure 

但它產生尋找libboost_atomic錯誤:

checking for a BSD-compatible install... /usr/local/bin/ginstall -c 
checking whether build environment is sane... yes 
checking for a thread-safe mkdir -p... /usr/local/bin/gmkdir -p 
checking for gawk... no 
checking for mawk... no 
checking for nawk... no 
checking for awk... awk 
checking whether make sets $(MAKE)... yes 
checking whether make supports nested variables... yes 
checking for g++... g++ 
checking whether the C++ compiler works... yes 
checking for C++ compiler default output file name... a.out 
checking for suffix of executables... 
checking whether we are cross compiling... no 
checking for suffix of object files... o 
checking whether we are using the GNU C++ compiler... yes 
checking whether g++ accepts -g... yes 
checking for style of include used by make... GNU 
checking dependency style of g++... gcc3 
checking for gcc... gcc 
checking whether we are using the GNU C compiler... yes 
checking whether gcc accepts -g... yes 
checking for gcc option to accept ISO C89... none needed 
checking whether gcc understands -c and -o together... yes 
checking dependency style of gcc... gcc3 
checking whether make sets $(MAKE)... (cached) yes 
checking build system type... x86_64-apple-darwin15.6.0 
checking host system type... x86_64-apple-darwin15.6.0 
checking for boostlib >= 1.60... yes 
checking whether the Boost::Thread library is available... yes 
checking for exit in -lboost_thread-mt... yes 
checking whether the Boost::Log library is available... yes 
checking for exit in -lboost_log-mt... yes 
checking for exit in -lboost_log_setup-mt... yes 
checking whether the Boost::Filesystem library is available... yes 
checking for exit in -lboost_filesystem... yes 
checking whether the Boost::Program_Options library is available... yes 
checking for exit in -lboost_program_options-mt... yes 
checking whether the Boost::System library is available... yes 
checking for exit in -lboost_system... yes 
checking whether the Boost::Chrono library is available... yes 
checking for exit in -lboost_chrono-mt... yes 
checking whether the Boost::Regex library is available... yes 
checking for exit in -lboost_regex-mt... yes 
checking whether the Boost::Date_Time library is available... yes 
checking for exit in -lboost_date_time-mt... yes 
checking for main in -lboost_atomic... no 
configure: error: Can not link to libboost_atomic! 

搜索互聯網上還沒有取得任何信息(我是軟件的用戶,而不是開發人員,所以我不確定我在尋找合適的條款)。

有誰能告訴我我錯過了什麼嗎?我是否需要安裝更多的依賴關係?

該系統是Mac 10.11。

回答

1

您錯過了使用boost原子庫進行開發的軟件包。編譯Linux上的東西時,這是一個常見的問題,並且你的修正是總是谷歌庫(boost原子)和你的linux的味道,看看得到什麼。對於基於Debian的系統(例如Ubuntu),

sudo apt-get install libboost-atomic-dev 

應該解決這個問題。您可能會遇到其他類似的錯誤 - 沖洗並重復。如果一切都失敗了,你可以下載源代碼,並編譯並安裝: http://www.boost.org/doc/libs/1_53_0/doc/html/atomic.html

你在那裏做了說明。

+0

謝謝 - 任何想法,我應該在Mac上尋找?自制軟件似乎只有'boost',沒有別的東西('brew install libboost-atomic-dev'不起作用)。我從http://www.boost.org/users/download/下載了boost源碼 - 如果我編譯並安裝了它,它是否應該安裝'libboost_atomic'?我毫不猶豫地繼續嘗試,以防萬一我最終會出現兩種相互衝突的增強安裝(一種通過自制軟件,另一種直接編譯)。 – Gerhard

+0

@Gerhard我認爲應該從描述中。在任何情況下,嘗試之前刪除自制安裝。如果失敗,你總是可以回去。 – kabanus

+0

@Gerhard我認爲它是在1.52版本中推出的,所以也許這款自制版本已經過時了。 – kabanus