天天看點

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 點選打開連結
Ubuntu16下編譯安裝Open Babel2.4.1和python綁定
第二步:安裝boost庫
Ubuntu16下編譯安裝Open Babel2.4.1和python綁定
第三步:安裝gcc、g++、make、cmkae
Ubuntu16下編譯安裝Open Babel2.4.1和python綁定
第四步:安裝依賴的開發庫
Ubuntu16下編譯安裝Open Babel2.4.1和python綁定
第五步:支援 Python (Python2.7)綁定,安裝python開發庫
Ubuntu16下編譯安裝Open Babel2.4.1和python綁定
第六步:編譯安裝
Ubuntu16下編譯安裝Open Babel2.4.1和python綁定
第七步:環境變量添加
Ubuntu16下編譯安裝Open Babel2.4.1和python綁定

最後一步:檢查Open Babel 2.4.1和Python綁定是否安裝成功

檢查Open Babel 2.4.1

Ubuntu16下編譯安裝Open Babel2.4.1和python綁定
Python綁定是否安裝成功
Ubuntu16下編譯安裝Open Babel2.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;
}      

編譯指令:

Ubuntu16下編譯安裝Open Babel2.4.1和python綁定

效果圖:

Ubuntu16下編譯安裝Open Babel2.4.1和python綁定