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

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

上一篇介绍的是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点击打开链接

image.png

第二步:安装boost库

image.png

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

 image.png

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

image.png

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

image.png

第六步:编译安装

image.png

第七步:环境变量添加

image.png

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

检查Open Babel 2.4.1

image.png

Python绑定是否安装成功

image.png

###################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;
}

编译命令:

image.png

效果图:

image.png


目录
相关文章
|
5月前
|
Linux 数据库管理 Python
CentOS7编译安装Python3.10(含OpenSSL1.1.1安装),创建虚拟环境,运行Django项目(含sqlite版本报错)
CentOS7编译安装Python3.10(含OpenSSL1.1.1安装),创建虚拟环境,运行Django项目(含sqlite版本报错)
779 4
|
5月前
|
Java API 开发工具
如何将python应用编译到android运行
【6月更文挑战第27天】本文介绍在Ubuntu 20上搭建Android开发环境,包括安装JRE/JDK,设置环境变量,添加i386架构,安装依赖和编译工具。并通过`p4a`命令行工具进行apk构建和清理。
87 6
如何将python应用编译到android运行
|
5月前
|
移动开发 Python
Python的文件对象open()
【6月更文挑战第8天】
39 5
|
1月前
|
Rust 监控 编译器
解密 Python 如何调用 Rust 编译生成的动态链接库(一)
解密 Python 如何调用 Rust 编译生成的动态链接库(一)
37 2
|
1月前
|
Rust 安全 Python
解密 Python 如何调用 Rust 编译生成的动态链接库(二)
解密 Python 如何调用 Rust 编译生成的动态链接库(二)
29 1
|
2月前
|
Python
Python 中如何指定 open 编码为ANSI
Python 中如何指定 open 编码为ANSI
|
1月前
|
存储 自然语言处理 编译器
Python 源文件编译之后会得到什么,它的结构是怎样的?和字节码又有什么联系?
Python 源文件编译之后会得到什么,它的结构是怎样的?和字节码又有什么联系?
44 0
|
3月前
|
自然语言处理 安全 编译器
Python 中的编译和链接过程
【8月更文挑战第29天】
46 6
|
3月前
|
Linux 开发工具 C语言
centos7编译安装python3
centos7编译安装python3
|
3月前
|
移动开发 Java 编译器
什么是pyc文件,把python的py文件编译成pyc文件,把pyc文件反编译成py文件。以及python编译的如何设置不生成pyc文件
什么是pyc文件,把python的py文件编译成pyc文件,把pyc文件反编译成py文件。以及python编译的如何设置不生成pyc文件
50 1