Это вопрос, связанный с тем, как python связан с модулем в Mac OSX. Я думаю, что кто-то в этом сообществе может помочь.

Я работаю на Mac OSX High Sierra.

Я пытаюсь использовать модуль Python, который связан с /Library/Frameworks/Python.framework/Versions/3.6/Python . Тем не менее, он не может найти эту библиотеку, так как она не существует.

Мой текущий исполняемый файл Python - /Users/name.surname/anaconda3/bin/python .

Я пытался использовать install_name_tool, чтобы изменить путь к текущему Python, но это не сработало и привело к

ImportError: dlopen(/Users/name.surname/Desktop/picoflexx/libroyale-3.20.0.62-APPLE-x86-64Bit/python/_roypy.so, 2): Library not loaded: /Users/valerio.biscione/anaconda3/bin/python
 Referenced from: /Users/name.surname/Desktop/picoflexx/libroyale-3.20.0.62-APPLE-x86-64Bit/python//_roypy.so
 Reason: no suitable image found.  Did find:
    /Users/name.surname/anaconda3/bin//python: not a dylib
    /Users/name.surname/anaconda3/bin/python3.6: not a dylib
    /Users/name.surname/anaconda3/bin/python: not a dylib
    /Users/name.surname/anaconda3/bin/python3.6: not a dylib

Я думаю, что должна быть какая-то существенная разница между версией Python для фреймворка и той, что установлена Anaconda.

Я также попытался переустановить Python, используя

brew install python --framework 

на котором установлен python 3.7, версия фреймворка. Затем я изменил имя библиотеки install_name на новый путь платформы python3.7 (только что установленный), и он, очевидно, сработал.

Тем не менее, это не удовлетворяет: я обычно использую Python 3.6.5, и я не могу найти версию платформы Python 3.6.5. В целом, мое непонимание различий между этими двумя версиями мешает мне найти идеальное решение, которое заключается в привязке моей текущей версии анаконды к модулю.

Итак, вопрос (и) (я думаю, что все они связаны): этот модуль ищет дилиб с именем Python. Где этот dylib в установке anaconda? Это вообще там? Если нет, как я могу получить это? В чем разница между версией анаконды и каркасной версией python?

Спасибо!

1 ответ1

0

Посмотрите этот ранее опубликованный ответ, чтобы получить 3.6.5 в вашей системе.

Поскольку вы упомянули анаконду, это может быть более уместным, что в основном предполагает выполнение следующей команды вместе с более ручным вариантом:

conda install python=3.6

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .