Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Menyelesaikan Ralat \'externally-managed-environment\' Semasa Memasang Pakej Python pada Debian/Ubuntu?
Memahami Ralat "persekitaran yang diuruskan secara luaran"
Apabila menggunakan pip pada sistem Linux dengan derivatif Debian atau Ubuntu, anda mungkin menghadapi ralat "persekitaran-diuruskan secara luaran". Ralat ini berlaku kerana sistem pengendalian menguatkuasakan penggunaan pakej terurus sistem untuk memasang aplikasi dan perpustakaan Python.
Maksud Ralat
Ralat menunjukkan bahawa sistem telah mengesan percubaan untuk memasang pakej Python yang bukan sebahagian daripada ekosistem pakej Debian. Pengedaran berasaskan Debian mengurus pakej perisian mereka secara berpusat, memastikan ketekalan dan kestabilan.
Cara Mengelakkan Ralat
Penyelesaian yang disyorkan ialah menggunakan persekitaran maya Python untuk mengasingkan anda pakej yang dipasang daripada pakej global sistem. Ini menghalang kemungkinan konflik dan kerosakan sistem.
Mencipta Persekitaran Maya
Untuk mencipta persekitaran maya menggunakan venv:
python3 -m venv my-virtual-env
Kemudian, aktifkan persekitaran:
source my-virtual-env/bin/activate
Dalam persekitaran yang diaktifkan, anda boleh memasang perpustakaan Python dan aplikasi tanpa menghadapi ralat.
Alat Pihak Ketiga
Sebagai alternatif, anda boleh menggunakan alatan pihak ketiga seperti pipx untuk mengurus aplikasi Python dalam persekitaran maya. Pasang pipx:
apt install pipx
Kemudian, pasang aplikasi:
pipx install some-python-application
Memasang Seluruh Sistem Jika Perlu
Dalam kes yang jarang berlaku, ia mungkin perlu memasang pakej di seluruh sistem. Walau bagaimanapun, ini hanya perlu dilakukan sebagai langkah terakhir dan dengan berhati-hati.
Menggunakan --break-system-packages
Bendera --break-system-packages dalam pip membolehkan anda mengatasi ralat. Ia harus digunakan dengan berhati-hati, kerana ia boleh memecahkan pakej sistem anda.
Mengubah suai pip.conf
Pilihan lain ialah menambah baris berikut pada ~/. config/pip/pip.conf:
[global] break-system-packages = true
Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat \'externally-managed-environment\' Semasa Memasang Pakej Python pada Debian/Ubuntu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!