0

Rdkit(版本:2013_09_1)make给出了一些错误:

make[2]: [代码/GraphMol/SLNParse/testSLNParse]

[代码/GraphMol/SLNParse/CMakeFiles/testSLNParse.dir/all] 错误2

以前的步骤(Boost 1.54.0,EIGEN3)

--------------------------------------------------升压-------------------------------------------------- -

mkdir ~/boost

mkdir ~/boost/boost-home

cd ~/boost/

wget "source to boost"

tar zxvf boost_1_54_0.tar.bz2

cd boost_1_54_0/

./bootstrap.sh --with-python-version=2.7 

./b2 --prefix=/lustre/home/ic003/amakris/boost/boost-home --enable-unicode=ucs4 link=shared install

导出 LD_LIBRARY_PATH="lustre/home/ic003/amakris/boost/boost-home/lib:${LD_LIBRARY_PATH}"

导出 LD_LIBRARY_PATH="/lustre/home/ic003/amakris/boost/boost_1_54_0/bin.v2/libs/python/build/gcc-5.4.0/release/threading-multi/:${LD_LIBRARY_PATH}"


-------------------------------------------------- -- RDKIT ------------------------------------------------------------ ---

mkdir ~/rdkit

cd ~/rdkit/

wget "source to rdkit"

tar xvf RDKit_2013_09_1.tgz

导出 RDBASE=/lustre/home/ic003/amakris/rdkit/RDKit_2013_09_1

导出 LD_LIBRARY_PATH=$RDBASE/lib:$LD_LIBRARY_PATH

导出 PYTHONPATH=$RDBASE:$PYTHONPATH

在 CMakeLists.txt 我添加了:

SET(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH}"/lustre/home/ic003/amakris/boost/boost-home/include")
SET(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} "/lustre/home/ic003/amakris/boost/boost-home/lib")
SET(Boost_LIBRARY_DIRS "/lustre/home/ic003/amakris/boost/boost-home/lib")

为了确保使用正确的 boost 版本(而不是系统默认的 1.64)。

mkdir $RDBASE/build

cd build

cmake /lustre/home/ic003/amakris/rdkit/RDKit_2013_09_1/ > -DBOOST_ROOT=/lustre/home/ic003/amakris/boost/boost-home -DBoost_NO_SYSTEM_PATHS=ON -DBoost_USE_STATIC_LIBS=OFF -DRDK_BUILD_INCHI_SUPPORT=ON -DEIGEN3_INCLUDE_DIR=/lustre/ home/ic003/amakris/.local/include/eigen3 -DAVALONTOOLS_DIR=$RDBASE/External/AvalonTools/distrib/SourceDistribution -DRDK_BUILD_AVALON_SUPPORT=ON

cmake结果:

-- 检查系统是否为大端

-- 搜索 16 位整数

-- 寻找 sys/types.h

-- 寻找 sys/types.h - 找到

-- 寻找 stdint.h

-- 寻找 stdint.h - 找到

-- 寻找 stddef.h

-- 寻找 stddef.h - 找到

-- 检查 unsigned short 的大小

-- 检查无符号短完成的大小

-- 使用无符号短

-- 检查系统是否为大端 - 小端

-- 找到 PythonLibs: /usr/lib64/libpython2.7.so (找到版本 "2.7.5")
-- 找到 PythonInterp: /usr/bin/python (找到版本 "2.7.5")

-- 增强版:1.54.0

-- 找到以下 Boost 库:

- Python

-- 寻找包含文件 pthread.h

-- 寻找包含文件 pthread.h - 找到

-- 寻找 pthread_create

-- 寻找 pthread_create - 未找到

-- 在 pthreads 中寻找 pthread_create

-- 在 pthreads 中寻找 pthread_create - 未找到

-- 在 pthread 中寻找 pthread_create

-- 在 pthread 中寻找 pthread_create - 找到

-- 找到的线程:TRUE

-- 在系统位置找不到 InChI(缺少:INCHI_LIBRARY INCHI_INCLUDE_DIR)

-- 在本地找到 InChI 软件

-- 找到 BISON:/usr/bin/bison

-- 找到 FLEX:/usr/bin/flex

-- 增强版:1.54.0

-- 找到以下 Boost 库:

-- 正则表达式

-- 配置完成

-- 生成完成

当我尝试使用 ( make -j 4) 进行制作时,出现以下错误:

../../../lib/libSLNParse.so.1.2013.09.1:未定义对boost::match_results<__gnu_cxx::__normal_iterator<char const*, std::string>, std::allocator<boost::sub_match<__gnu_cxx::__normal_iterator<char const*, std::string> > > >::maybe_assign(boost::match_results<__gnu_cxx::__normal_iterator<char const*, std::string>, std::allocator<boost::sub_match<__gnu_cxx::__normal_iterator<char const*, std::string> > > > const&)' ../../../lib/libSLNParse.so.1.2013.09.1: undefined reference toboost::re_detail::perl_matcher<__gnu_cxx::__normal_iterator, std::allocator > >, boost::regex_traits >:: 的引用constructor_init(boost::basic_regex > > const&, boost::regex_constants::_match_flags)' collect2: 错误: ld 返回 1 退出状态 make[2]: [Code/GraphMol/SLNParse/testSLNParse] 错误 1 ​​make[1]: [代码/GraphMol/SLNParse/CMakeFiles/testSLNParse.dir/all] 错误 2

我知道如果我添加 cmake -DRDK_BUILD_SLN_SUPPORT=OFF构建成功。但我需要 SLN SUPPORT 所以我不使用它。

有谁知道出了什么问题?(我想要上述软件包的这些版本,而且我没有 sudo 权限)。

先感谢您。

4

0 回答 0