Jika Anda tidak memerlukan paket python untuk semua pengguna maka Anda dapat menginstalnya di rumah Anda seperti ini:
pip install --user packagename
Menginstal di rumah Anda tidak akan bertentangan dengan pengelola paket.
Secara default pip install --user
akan menginstal di direktori "situs pengguna" Anda. Biasanya itu adalah sesuatu seperti: /home/lesmana/.local/lib/python3.6/site-packages
.
Perintah berikut akan mencetak, antara lain, lokasi "situs pengguna" Anda:
python -m site
Untuk menyesuaikan lokasi pemasangan:
PYTHONUSERBASE=$HOME/some/dir pip install --user packagename
ini akan menginstal semuanya di bawah $HOME/some/dir
untuk berlari:
PYTHONUSERBASE=$HOME/some/dir $HOME/some/dir/bin/progname
Lihat manual pip untuk informasi lebih lanjut.
jika Anda menginginkan paket python untuk semua pengguna maka tempat terbaik untuk menginstalnya adalah /opt
. misalnya seperti ini:
PYTHONUSERBASE=/opt/packagedir pip install packagename
(perhatikan yang hilang --user
)
dan untuk menjalankan, seperti di atas:
PYTHONUSERBASE=/opt/packagedir /opt/packagedir/bin/progname
Penjelasan latar belakang: /opt
secara umum diakui oleh distribusi gnu / linux sebagai direktori di mana pengguna lokal atau administrator sistem dapat menginstal barang-barangnya sendiri. dengan kata lain: manajer paket distribusi biasanya tidak menyentuh /opt
. ini kurang lebih terstandarisasi dalam Standar Hierarki Filesystem
Untuk kenyamanan bagi pengguna, Anda masih ingin menulis skrip pembungkus dan meletakkannya di /bin
atau /usr/bin
. Ini masih berisiko bertabrakan dengan manajer paket distribusi tetapi setidaknya itu hanya satu file skrip wrapper. Jadi kerusakan yang mungkin dilakukan sangat minim. Anda dapat memberi nama skrip pembungkus seperti local-foo
atau custom-foo
untuk meminimalkan risiko tabrakan dengan manajer paket distribusi.
Atau Anda dapat memodifikasi PATH
untuk memasukkan /opt/bin
dan menempatkan skrip pembungkus Anda di sana. Tetapi ini lagi mengharuskan Anda untuk memodifikasi (atau beberapa) file sistem di mana PATH
ditentukan yang lagi dapat ditimpa oleh manajer paket distribusi.
Singkatnya: jika Anda ingin menginstal untuk semua pengguna maka lakukan /opt
. Tempat Anda meletakkan skrip pembungkus untuk kenyamanan adalah panggilan penilaian.
Informasi Lebih Lanjut tentang /opt
dan Standar Sistem Hierarki Filesystem:
python
dan berharap saya tahu ini sebelumsudio
hal-hal pip-ping. Terima kasih untuk ini.Biasanya, dalam distribusi, disarankan agar Anda menggunakan manajer paket distribusi. Anda tentu saja dapat menginstal sesuatu menggunakan pip (atau, di perl dunia, cpan), atau kompilasi dan instal sendiri. Namun, ketika Anda melakukan ini, manajer paket distribusi tidak tahu tentang mereka dan tidak dapat mengelola dependensi atau pembaruan untuk mereka.
Menggunakan pip hampir sama dengan mengkompilasi dan menginstal paket Anda sendiri. Lakukan jika perlu, tetapi lebih suka manajer paket distribusi.
sumber
pip
(setidaknya secara global viasudo
atau sebagai root) - Saya baru saja mendapatkan beberapasite-package/...
kesalahan yang sudah ada ketikapacman
mencoba menginstal beberapa dependensiCara yang tepat untuk ArchLinux
Cara yang tepat untuk menginstal paket PYTHON di ArchLinux menggunakan PACMAN! Untuk menginstal paket ke Python3, Anda harus menggunakan
Jika Anda ingin menginstal paket dari Python2, Anda harus menggunakannya
Sebagian besar paket python berada dalam repositori ArchLinux dan paket-paket yang tidak ada dalam AUR (ArchLinux User Repositories) - untuk paket-paket ini Anda harus mengunduh file dan kompilasi PKGBUILD. Setelah itu, Anda harus menggunakan PACMAN untuk menyelesaikan instalasi
Cara tepat kedua untuk ArchLinux
Ketika paket tidak di AUR atau PKGBUILD tidak berfungsi, Anda dapat menggunakan PIP untuk menginstalnya ke Python3
atau Python2
Anda bisa memberi kesempatan kepada
virtualenv
atau bahkanconda
Di Arch, Anda juga dapat menggunakan VirtualEnvironmentments. Ini dapat membawa portabilitas ke kode Anda dan memelihara paket lama juga. Instal dengan
dan coba ini
Ketika Anda membuat lingkungan ini
yourenv
, Anda akan mengaturpip
untuk menginstal paket hanya ke lingkungan ini, bukan ke seluruh sistem.Tautan lain ini dapat berguna jika Anda ingin mempelajari lebih lanjut tentang mengelola paket di Linux dengan
conda
atauvirtualenv
:Menginstal Paket Python dari Notebook Jupyter
Kode Python di ArchLinux
Jika Anda mengikuti aturan ini, ArchLinux Anda tidak akan rusak dan tidak akan memiliki masalah ketergantungan antara PACMAN dan PIP.
Semoga bermanfaat!
sumber
Untuk paket-paket tertentu (yang kemungkinan besar saya tidak ingin retas), saya membuat paket sendiri menggunakan ini:
https://github.com/bluepeppers/pip2arch
kemudian bangun dan pasang PKGBUILD yang diproduksi.
Saya meninggalkan virtualenvs untuk paket yang mungkin ingin saya ubah atau retas.
sumber
Selain jawaban lain di sini, lihat
python-virtualenv
paket. Mungkin sangat berguna jika Anda melakukan pengembangan pada beberapa proyek dengan dependensi berbeda dengan nomor versi yang tidak cocok.https://wiki.archlinux.org/index.php/Python_VirtualEnv
Hati-hati juga bahwa ada dua varian pip dan virtualenv. Satu untuk Python 2 dan satu untuk Python 3. Jika instalasi gagal dengan kesalahan sintaks, Anda mungkin mencoba dengan versi yang salah.
sumber