我目前正在從源代碼編譯v1.13開發過程中。我使用autogen.sh
生成了配置文件。我正在使用命令./configure --enable-openmp CXX='g++-5'
運行配置腳本,但是這會返回錯誤configure: error: No usable boost::iostreams found
。我不記得當我編譯v1.12時遇到這個錯誤,但也許我只是不記得了。我檢查了使用Anaconda安裝的boost版本,它告訴我它是最新的,所以我認爲我可能只需要將腳本指向正確的位置,但還沒有找到適用於我的在線解決方案。我可能在這裏做錯了什麼?從源代碼編譯圖形工具 - 找不到可用的boost :: coroutine找到
這似乎是對的config.log相關條目:
configure:18704: result: no
configure:18669: checking for exit in -lboost_iostreams-mt-py2.5
configure:18694: g++-5 -o conftest -Wall -Wextra -ftemplate-backtrace-limit=0 -std=gnu++14 -DNDEBUG -ftemplate-depth-250 -Wno-deprecated -Wno-unknown-pragmas -O3 -fvisibility=default -fvisibility-inlines-hidden -fopenmp -I/home/pmj27/anaconda2/include/python2.7 conftest.cpp -lboost_iostreams-mt-py2.5 -lexpat -lm >&5
/usr/bin/ld: cannot find -lboost_iostreams-mt-py2.5
collect2: error: ld returned 1 exit status
configure:18694: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "graph-tool"
| #define PACKAGE_TARNAME "graph-tool"
| #define PACKAGE_VERSION "2.13dev"
| #define PACKAGE_STRING "graph-tool 2.13dev"
| #define PACKAGE_BUGREPORT "http://graph-tool.skewed.de/issues"
| #define PACKAGE_URL "http://graph-tool.skewed.de"
| #define PACKAGE "graph-tool"
| #define VERSION "2.13dev"
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define __EXTENSIONS__ 1
| #define _ALL_SOURCE 1
| #define _GNU_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define _TANDEM_SOURCE 1
| #define STDC_HEADERS 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define OPENMP_MIN_THRESH 300
| #define USING_OPENMP 1
| #define HAVE_LIBM 1
| #define HAVE_LIBEXPAT 1
| #define HAVE_PYTHON "2.7"
| #define HAVE_BOOST /**/
| #define HAVE_BOOST_PYTHON /**/
| #define HAVE_BOOST_IOSTREAMS /**/
| /* end confdefs.h. */
|
| /* Override any GCC internal prototype to avoid an error.
| Use char because int might match the return type of a GCC
| builtin and then its argument prototype would still apply. */
| #ifdef __cplusplus
| extern "C"
| #endif
| char exit();
| int
| main()
| {
| return exit();
| ;
| return 0;
| }
configure:18704: result: no
configure:18715: error: No usable boost::iostreams found
編輯:重新安裝使用apt-get install libboost-all-dev
意味着我可以運行配置,但現在我得到以下警告升壓:
configure: WARNING: No usable boost::coroutine found! Some functionality will be disabled in the library.