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
495 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!

sumber:php.cn
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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!