แทนที่จะเป็น--targetตัวเลือกหรือ--install-optionsตัวเลือกฉันได้พบว่าสิ่งต่อไปนี้ใช้ได้ดี (จากการอภิปรายข้อผิดพลาดเกี่ยวกับสิ่งนี้ที่https://github.com/pypa/pip/issues/446 ):
PYTHONUSERBASE=/path/to/install/to pip install --user
(หรือตั้งค่าPYTHONUSERBASEไดเรกทอรีในสภาพแวดล้อมของคุณก่อนเรียกใช้คำสั่งโดยใช้export PYTHONUSERBASE=/path/to/install/to)
นี้ใช้ประโยชน์มาก--userตัวเลือก แต่บอกว่ามันจะทำให้bin, lib, shareและไดเรกทอรีอื่น ๆ ที่คุณคาดหวังภายใต้คำนำหน้ากำหนดเองมากกว่า$HOME/.localที่คุณคาดหวังภายใต้คำนำหน้ากำหนดเองมากกว่า
จากนั้นคุณสามารถเพิ่มนี้เพื่อคุณPATH, PYTHONPATHและตัวแปรอื่น ๆ ตามที่คุณต้องการไดเรกทอรีการติดตั้งปกติ
โปรดทราบว่าคุณอาจจำเป็นต้องระบุ--upgradeและ--ignore-installedตัวเลือกหากแพ็คเกจใด ๆ ที่ขึ้นอยู่กับนี้จำเป็นต้องติดตั้งรุ่นที่ใหม่กว่าในPYTHONUSERBASEไดเรกทอรีเพื่อแทนที่รุ่นที่ระบบให้มา
ตัวอย่างเต็มรูปแบบ:
PYTHONUSERBASE=/opt/mysterypackage-1.0/python-deps pip install --user --upgrade numpy scipy
.. เพื่อติดตั้งscipyและnumpyแพ็คเกจเวอร์ชันล่าสุดลงในไดเรกทอรีซึ่งคุณสามารถรวมไว้ในสิ่งที่คุณPYTHONPATHชอบ (ใช้ bash และ python 2.6 บน CentOS 6 สำหรับตัวอย่างนี้):
export PYTHONPATH=/opt/mysterypackage-1.0/python-deps/lib64/python2.6/site-packages:$PYTHONPATH
export PATH=/opt/mysterypackage-1.0/python-deps/bin:$PATH
การใช้ virtualenv ยังคงเป็นทางออกที่ดีกว่าและดีกว่า!