Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk Menyelesaikan \'Perpustakaan tidak Dimuatkan: libmysqlclient.18.dylib\' Ralat dalam Django pada macOS El Capitan?

Bagaimana untuk Menyelesaikan \'Perpustakaan tidak Dimuatkan: libmysqlclient.18.dylib\' Ralat dalam Django pada macOS El Capitan?

Susan Sarandon
Susan Sarandonasal
2024-10-25 03:44:02603semak imbas

How to Resolve

Pustaka tidak Dimuatkan: libmysqlclient.18.dylib disebabkan oleh Laluan Relatif Tidak Selamat

Pernyataan Masalah:

Apabila menjalankan arahan "python manage.py runserver" Django, ralat berlaku disebabkan penggunaan laluan relatif yang tidak selamat dalam "_mysql.so" semasa memuatkan modul MySQLdb. Ralat berbunyi:

ImproperlyConfigured: Error loading MySQLdb module: dlopen(/Library/Python/2.7/site-packages/_mysql.so, 2): Library not loaded: libmysqlclient.18.dylib
  Referenced from: /Library/Python/2.7/site-packages/_mysql.so
  Reason: unsafe use of relative rpath libmysqlclient.18.dylib in /Library/Python/2.7/site-packages/_mysql.so with restricted binary

Penyelesaian:

Ralat ini timbul kerana macOS El Capitan memperkenalkan Perlindungan Integriti Sistem, yang menyekat program daripada mengakses perpustakaan kongsi menggunakan rujukan relatif. "_mysql.so" mempunyai rujukan relatif kepada "libmysqlclient.18.dylib," tetapi ini kini dilarang.

Untuk menyelesaikannya, rujukan mutlak mesti dipaksa untuk "_mysql.so" menggunakan "install_name_tool" " utiliti. Begini caranya:

  1. Pastikan "libmysqlclient.18.dylib" terletak dalam "/usr/local/mysql/lib/".
  2. Jalankan arahan berikut dalam Terminal:
sudo install_name_tool -change libmysqlclient.18.dylib \
  /usr/local/mysql/lib/libmysqlclient.18.dylib \
  /Library/Python/2.7/site-packages/_mysql.so

Arahan ini mengubah suai "_mysql.so" untuk menggunakan laluan mutlak kepada "libmysqlclient.18.dylib," dengan itu menyelesaikan isu laluan relatif yang tidak selamat.

Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan \'Perpustakaan tidak Dimuatkan: libmysqlclient.18.dylib\' Ralat dalam Django pada macOS El Capitan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn