Rumah > pangkalan data > tutorial mysql > 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
Lepaskan: 2024-10-25 03:44:02
asal
662 orang telah melayarinya

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
Salin selepas log masuk

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
Salin selepas log masuk

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 Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan