2017-02-10 22 views
0

私はPythonを使用して、PhDのいくつかの化学構造でスクリプトを動作させています。私はPython用のopenbabelライブラリをインストールしたい。私はベストを尽くしましたが、私はそれをインストールできませんでした。常にエラーが発生します: Error: SWIG failed. Is Open Babel installed? 私のPC上のPythonパスは、C:\Users\malih\AppData\Local\Programs\Python\Python36-32です。 Openbabelは次のパスC:\Program Files (x86)\OpenBabel-2.3.1にインストールされています。Windows 10にPython 3.6用のopenbabelをインストールするにはどうすればよいですか?

私はpython -m pip install openbabelを実行すると、それは次のエラーを与える:

C:\Users\malih>python -m pip install openbabel 
Collecting openbabel 
Using cached openbabel-2.4.1.tar.gz 
Installing collected packages: openbabel 
Running setup.py install for openbabel ... error 
Complete output from command C:\Users\malih\AppData\Local\Programs\Python\Python36-32\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\malih\\AppData\\Local\\Temp\\pip-build-glr82a7x\\openbabel\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record C:\Users\malih\AppData\Local\Temp\pip-02z3p_a9-record\install-record.txt --single-version-externally-managed --compile: 
running install 
running build_ext 
Warning: pkg-config could not be found. 
Guessing Open Babel location: 
- include_dirs: ['C:\\Users\\malih\\AppData\\Local\\Programs\\Python\\Python36-32\\include', 'C:\\Users\\malih\\AppData\\Local\\Programs\\Python\\Python36-32\\include', '/usr/local/include/openbabel-2.0'] 
- library_dirs: ['C:\\Users\\malih\\AppData\\Local\\Programs\\Python\\Python36-32\\libs', 'C:\\Users\\malih\\AppData\\Local\\Programs\\Python\\Python36-32\\PCbuild\\win32', '/usr/local/lib'] 
building '_openbabel' extension 
swigging openbabel-python.i to openbabel-python_wrap.cpp 
swig.exe -python -c++ -small -O -templatereduce -naturalvar -IC:\Users\malih\AppData\Local\Programs\Python\Python36-32\include -IC:\Users\malih\AppData\Local\Programs\Python\Python36-32\include -I/usr/local/include/openbabel-2.0 -o openbabel-python_wrap.cpp openbabel-python.i 

Error: SWIG failed. Is Open Babel installed? 
You may need to manually specify the location of Open Babel include and library directories. For example: 
    python setup.py build_ext -I/usr/local/include/openbabel-2.0 -L/usr/local/lib 
    python setup.py install 

---------------------------------------- 
Command "C:\Users\malih\AppData\Local\Programs\Python\Python36-32\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\malih\\AppData\\Local\\Temp\\pip-build-glr82a7x\\openbabel\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record C:\Users\malih\AppData\Local\Temp\pip-02z3p_a9-record\install-record.txt --single-version-externally-managed --compile" failed with error code 1 in C:\Users\malih\AppData\Local\Temp\pip-build-glr82a7x\openbabel\ 

私は、このページの指示に従ってくださいしようとしましたが、彼らはLinux用の純粋であり、私はWindowsのためにそれらをフォローアップできませんでした: How do I use python-openbabel in Travis CI?

私はまた、以下のガイドからのpkg-config設定をインストールしようとしたが、その後も、それは同じエラーを与える: How to install pkg config in windows?

私の仕事はこれに基づいており、私はこの時点で立ち往生しているので、私を助けてください。あなたの時間を事前に感謝します。

答えて

1

pip installは、ウインドウズフレンドリーではないことが知られています。私は最近、いくつかのかなりのビットを行う持っていたバインディングのpythonをインストール+ダウンロード、またはunoffical official openBabelなどのPythonの窓が構築使用し、その後、cdダウンロードしたディレクトリに、そしてpip install OPENBABEL_FILE_WINDOWS.whl

を行い、その後、ウェブサイトをopenBabelなどとWindowsバイナリをインストール+ダウンロードに行くのどちらかOpenbabelを使用した2D molファイル - > 3D molファイル変換の作業それがあなたのためにどのように機能するか教えてください。

-

編集:私も追加する必要があり、python3.xはpython2.xにbreakingly異なっています。だから何かが壊れてしまったら、python2.xで試してください

+0

こんにちは@pandamakesありがとうございました。これはかなり速く、 'pip install openbabel-2.4.1-cp36-cp36m-win32.whl'を使ってインストールしました。正しく動作しているかどうかを確認する例も教えてください。後でその詳細な使用法を説明します。私は次の例をオンラインで試してみましたが、エラーが出ました: 'import pybel mol = pybel.readstring(" smi "、" CC(= O)Br ")mol.make3D()print(mol.write(" sdf " )) ' また、どの形式も読んでいません。 'ValueError:mol2は認識されたOpen Babelフォーマットではありません? ' – Hashmi

+0

お詫び申し上げます、私はあなたがまだopenbabel windowsバイナリをダウンロードしてインストールする必要があると信じています。この仮説をテストするには、コマンドラインに行き、「obabelが内部コマンドとして認識されない」と表示された場合はobabel -Vと入力し、Windowsバイナリをインストールする必要があります。 whlファイルはPythonバインディングだけです、と私は思います。 – pandamakes

関連する問題