Как установить openbabel для Python 3.6 на macOS Sierra 10.12.3

Я использую Python для создания сценария для работы с некоторыми химическими структурами в моей докторской диссертации. Я хочу установить библиотеки openbabel для python. Я старался изо всех сил, но я не мог установить его на Windows. Ранее я опубликовал вопрос об установке его на Windows в разделе Как установить openbabel для Python 3.6 в Windows 10? но не смог найти решение. Решение установило библиотеку, но она не работает и не может подключиться к SWIG. Нет, я пытаюсь установить его на свой офисный компьютер, который является Mac в течение последних 5 часов, но я не мог понять, что происходит. Я попытался установить его из исходного кода Opnbabel и связать его с python3, но это создает проблемы. Если я использую следующую команду:

cmake ../ -DPYTHON_BINDINGS=ON -DRUN_SWIG=ON

Он успешно связывает его с Python 2.7, который я не хочу. Когда я пробую следующие варианты, выдает ошибку, показанную ниже:

cmake ../ -DPYTHON_EXECUTABLE=/usr/bin/python3 -DPYTHON_BINDINGS=ON -DRUN_SWIG=ON

ИЛИ ЖЕ

cmake ../ -DRUN_SWIG=ON -DPYTHON_EXECUTABLE=/usr/bin/python3 -DPYTHON_INCLUDE_DIR=/Library/Frameworks/Python.framework/Versions/3.5/include/python3.5m -DPYTHON_LIBRARY=/Library/Frameworks/Python.framework/Versions/3.5/lib/libpython3.5m.dylib -DPYTHON_BINDINGS=ON

Это дает следующую ошибку в конце после большого количества успешных выходных данных:

-- Found PythonInterp: /usr/bin/python3.6 (found version "1.4") 
-- Found SWIG: /usr/local/bin/swig (found version "3.0.12") 
-- Found SWIG: /usr/local/bin/swig (found suitable version "3.0.12", minimum required is "2.0") 
-- Found PythonLibs: /usr/local/Cellar/python3/3.6.0/Frameworks/Python.framework/Versions/3.6/lib/libpython3.6m.dylib (found version "3.6.0") 
-- Python bindings will be compiled
CMake Error at scripts/CMakeLists.txt:120 (install):
install TARGETS given no LIBRARY DESTINATION for module target
"bindings_python".
CMake Error at scripts/CMakeLists.txt:123 (install):
install FILES given no DESTINATION!
CMake Error at scripts/CMakeLists.txt:126 (install):
install FILES given no DESTINATION!
-- Configuring incomplete, errors occurred!
See also "/usr/local/Cellar/obabel/openbabel-master/ali/CMakeFiles/CMakeOutput.log".
See also "/usr/local/Cellar/obabel/openbabel-master/ali/CMakeFiles/CMakeError.log".

Я не уверен, почему он обнаруживает Python как v1.4 -- Found PythonInterp: /usr/bin/python3.6 (found version "1.4") вместо того, чтобы найти v.3.5. Я пробовал всю процедуру с Python 3.6, но возникают те же ошибки. Я также использую openbabel, полученный из github, который, как говорили, работает с этими командами в следующем посте: http://forums.openbabel.org/OpenBabel-for-Python-3-td4659432.html Но он не работает также. Пожалуйста, помогите мне, так как мне нужен этот модуль для моих исследований. Спасибо

1 ответ

Я нашел решение для этого. Вот подробное решение:

  1. Загрузите Open Babel из оригинального источника ( https://github.com/openbabel/openbabel)

  2. Извлеките его и перейдите на него (openbabel-master)

  3. Создайте каталог "build" и перейдите в него.

  4. Запустите следующую команду:

    cmake ../ -DPYTHON_EXECUTABLE=/Library/Frameworks/Python.framework/Versions/3.5/bin/python3 -DPYTHON_BINDINGS=ON -DRUN_SWIG=ON

    В приведенной выше команде ключ -DPYTHON_EXECUTABLE указывает путь, по которому находится интерпретатор Python3. Вы можете проверить это по which python3 в терминале.

  5. make

  6. make install

Все сделано!:)

Другие вопросы по тегам