Ubuntu16下编译安装Open Babel2.4.1和python绑定

12 篇文章 3 订阅
9 篇文章 15 订阅

 

上一篇介绍的是CentOS 7下编译安装Open Babel2.4.1和python绑定点击打开链接

 

一、Open Babel简介

Open Babel是一款开源自由软件,使用Open Babel可以将一种化学结构类型的文件格式转换成另一种文件格式,非常方便的进行各种类型的化学结构文件进行相互转换。

Open Babel由CC++编写,并提供C ++, Perl, Python等的API接口方便开发。

 

 

二、Open Babel 2.4.1的编译安装并绑定Python

 

第一步:下载openbabel 2.4.1安装包

下载地址:https://github.com/openbabel/openbabel/releases点击打开链接

 

第二步:安装boost库

 

su root               #获取root权限
apt install libboost-dev   # 安装boost库

第三步:安装gcc、g++、make、cmkae

 

apt install gcc
apt install g++
apt install make
apt install cmake

第四步:安装依赖的开发库

 

apt install libxml2-dev
apt install zlib1g-dev
apt install libcairo2-dev
apt install libeigen2-dev 
apt install libopenbabel-dev

第五步:支持Python(Python2.7)绑定,安装python开发库

 

apt install python-dev

第六步:编译安装

 

tar zxvf openbabel-2.4.1.tar.gz
mkdir build
cd build
cmake ../openbabel-2.4.1 -DPYTHON_BINDINGS=ON      #编译安装Python绑定 
make
make test
make install

第七步:环境变量添加

 

gedit ~/.bashrc

#open babel
export PATH=/usr/local/bin:$PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export PYTHONPATH=/usr/local/lib/python2.7/site-packages:$PYTHONPATH   #Python路径添加

source ~/.bashrc

最后一步:检查Open Babel 2.4.1和Python绑定是否安装成功

检查Open Babel 2.4.1

Python绑定是否安装成功

###################CC++ example的编译###########################

/*example.cpp*/

 

#include <iostream>
#include <openbabel/obconversion.h>
using namespace std;
int main(int argc,char **argv)
{
if(argc<3)
{
cout << "Usage: ProgrameName InputFileName OutputFileName\n";
return 1;
}
ifstream ifs(argv[1]);
if(!ifs)
{
cout << "Cannot open input file\n";
return 1;
}
ofstream ofs(argv[2]);
if(!ofs)
{
cout << "Cannot open output file\n";
return 1;
}
OpenBabel::OBConversion conv(&ifs, &ofs);
if(!conv.SetInAndOutFormats("CML","MOL"))
{
cout << "Formats not available\n";
return 1;
}
int n = conv.Convert();
cout << n << " molecules converted\n";
return 0;
}

编译命令:

 

 

g++ example.cpp -I /usr/local/include/openbabel-2.0 -lopenbabel 

效果图:

 



 


DrugAI
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DrugAI

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值