Apa itu mungkin? Saat menginstal pip
, instal paket python di dalam $HOME
folder saya . (misalnya, saya ingin menginstal mercurial
, menggunakan pip
, tetapi di dalam $HOME
alih-alih /usr/local
)
Saya menggunakan mesin mac dan hanya memikirkan kemungkinan ini, alih-alih "mencemari" saya /usr/local
, saya akan menggunakan saya $HOME
.
PEP370 persis tentang ini. Apakah hanya membuat ˜/.local
dan melakukan pip install package
cukup untuk membuat paket-paket ini diinstal hanya pada folder $ HOME saya?
$ python setup.py --user install
. Dan itu berhasil. Paket sekarang diinstal di home subdir dan semua berfungsi seperti yang diharapkan. Harus berbicara dengan admin server saya.wget https://bootstrap.pypa.io/get-pip.py
diikuti olehpython get-pip.py
dan Anda siap melakukannya. Mungkin bermanfaat jika Anda menggunakan mesin yang PIP yang dipasangnya terlalu lama (seperti kasus saya). Lihat pip.readthedocs.org/en/latest/installing.html untuk info lebih lanjut.Jawaban:
Meskipun Anda dapat menggunakan
virtualenv
, Anda tidak perlu melakukannya. Caranya adalah meneruskan--user
argumen PEP370 kesetup.py
skrip. Dengan versi terbarupip
, satu cara untuk melakukannya adalah:Ini akan menghasilkan
hg
skrip yang diinstal$HOME/.local/bin/hg
dan sisa paket hg di$HOME/.local/lib/pythonx.y/site-packages/
.Perhatikan, bahwa di atas berlaku untuk Python 2.6. Ada sedikit kontroversi di antara pengembang inti Python tentang apa lokasi direktori yang sesuai pada Mac OS X untuk
user
instalasi bergaya PEP370 . Dalam Python 2.7 dan 3.2, lokasi di Mac OS X diubah dari$HOME/.local
menjadi$HOME/Library/Python
. Ini mungkin berubah dalam rilis mendatang. Tetapi, untuk saat ini, pada 2.7 (dan 3.2, jikahg
didukung pada Python 3), lokasi di atas akan$HOME/Library/Python/x.y/bin/hg
dan$HOME/Library/Python/x.y/lib/python/site-packages
.sumber
easy_install
datang diinstal di Mac OS X secara default, jadi saya hanya akan menginstal pip di luar$HOME
folder..local
akan selalu terkena terlebih dahulu yang dapat menyebabkan sangat sulit untuk melacak kesalahan impor.export PATH=$PATH:~/Library/Python/X.Y/bin/
.Saya akan menggunakan virtualenv di direktori HOME Anda.
Anda kemudian dapat mengubah
~/.(login|profile|bash_profile)
, mana yang tepat untuk shell Anda untuk menambahkan ~ / bin ke PATH Anda dan kemudian itupip|python|easy_install
akan menjadi yang digunakan secara default.sumber
virtualenv venv
,source venv/bin/activate
. Anda mungkin tidak selalu ingin selalu menggunakan virtualenv Anda, dan dengan menggunakan metode ini, prompt Anda diawali dengan(venv)
saat Anda menggunakannya.Anda dapat menentukan
-t
opsi (--target
) untuk menentukan direktori tujuan. Lihatpip install --help
untuk informasi terperinci. Ini adalah perintah yang Anda butuhkan:misalnya, untuk menginstal say mxnet, di
$HOME
direktori saya , saya ketik:sumber
distutils.errors.DistutilsOptionError: can't combine user with prefix, exec_prefix/home, or install_(plat)base
. Apa artinya?