python mysqldb ошибка на моем mac: библиотека не загружена: @ rpath / libmysqlclient.21.dylib

0

импортировать MySQLdb

'Traceback (most recent call last): File "<stdin>", line 1, in <module> File "build/bdist.macosx-10.13-intel/egg/MySQLdb/__init__.py", line 19, in <module> File "build/bdist.macosx-10.13-intel/egg/_mysql.py", line 7, in <module> File "build/bdist.macosx-10.13-intel/egg/_mysql.py", line 6, in __bootstrap__ ImportError: dlopen(/Users/simon/.python-eggs/MySQL_python-1.2.5-py2.7-macosx-10.13-intel.egg-tmp/_mysql.so, 2): Library not loaded: @rpath/libmysqlclient.21.dylib Referenced from: /Users/simon/.python-eggs/MySQL_python-1.2.5-py2.7-macosx-10.13-intel.egg-tmp/_mysql.so Reason: image not found

Я пытаюсь создать и установить mysql-python и ln -s/usr/local/mysql/lib/libmysqlclient.18.dyli, но не могу его решить.

Теги:
mysql-python

2 ответа

1

Итак, из того, что я могу сказать, @rpath пытается разрешить /usr/lib, на который нельзя записать. Я разрешил это, выполняя этот сайт. Многие из них на китайском языке, но я получил команду sudo install_name_tool -change @rpath/libmysqlclient.21.dylib/usr/local/mysql/lib/libmysqlclient.21.dylib/Users/[username]/.pyenv/versions/career/lib/python2.7/site-packages/_mysql.so

0

Я сделал что-то похожее на то, что сделал Сэм, и смог заставить его работать.

Я просто сделал копию файла libmysqlclient.21.dylib находящегося в моей последней установке MySQL 8.0.13, которая была в /usr/local/mysql/lib и перенесла эту копию под тем же именем в /usr/lib.

Вам придется временно отключить защиту целостности безопасности на вашем Mac, но это сделать, поскольку вы не имеете или не сможете изменять разрешения на что-либо в /usr/lib не отключая его. Вы можете сделать это, загрузившись в систему восстановления, нажмите "Утилиты" в меню вверху и откройте терминал и введите csrutil disable в терминал. Не забудьте снова включить защиту целостности безопасности, когда вы это сделаете! Единственное отличие от вышеописанного процесса заключается в том, что вместо этого вы запускаете csrutil enable.

Вы можете узнать больше о том, как отключить и включить защиту целостности защиты от макросов.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню