ข้อผิดพลาด pyvenv-3.4: ส่งคืนสถานะทางออกที่ไม่ใช่ศูนย์ 1


58

เมื่อพยายามสร้างสภาพแวดล้อมเสมือนโดยใช้การรวมpyvenv-3.4ที่มาพร้อมกับ 14.04 จะเกิดข้อผิดพลาด:

Error: Command '['/some/directories/bin/python3.4', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1

ฉันจะใช้ pyvenv-3.4 กับ Ubuntu 14.04 ได้อย่างไร


1
หากคุณกำลังใช้แอนนาคอนดาซึ่งเป็นปัญหาแอนนาคอนดาไม่มีensurepip: stackoverflow.com/a/39114277/1439843
Gerhard Burger

คำตอบ:


50

แต่น่าเสียดายที่ 14.04 pyvenvพร้อมกับหัก ตามหัวข้อ launchpad นี้ปัญหาจะได้รับการแก้ไขใน 14.04-1 ที่จะเกิดขึ้น

ใช้วิธีนี้คุณสามารถติดตั้งสภาพแวดล้อม Pyvenv โดยไม่ต้องใช้ pip แล้วติดตั้ง pip ด้วยตนเองหลังจากข้อเท็จจริง

pyvenv-3.4 --without-pip myvenv
source ./myvenv/bin/activate
wget https://pypi.python.org/packages/source/s/setuptools/setuptools-3.4.4.tar.gz
tar -vzxf setuptools-3.4.4.tar.gz
cd setuptools-3.4.4
python setup.py install
cd ..
wget https://pypi.python.org/packages/source/p/pip/pip-1.5.6.tar.gz
tar -vzxf pip-1.5.6.tar.gz
cd pip-1.5.6
python setup.py install
cd ..
deactivate
source ./myvenv/bin/activate

มีคนแนะนำการแก้ไขแบบรุนแรงเพื่อใช้get-pip.pyในคำตอบนี้ - ฉันคิดว่ามันเปลี่ยนแปลงมากเกินไป แต่โปรดเพิ่มคำตอบของคุณเป็นคำตอบใหม่ (แม้เพียงแค่คัดลอกส่วนบนของคำตอบนี้)!
Volker Siegel

คุณอยู่ในไดเรกทอรีใดเมื่อคุณเรียกใช้คำสั่งเหล่านี้ นี่คือไดเรกทอรีที่คุณจะสร้างแอพไพ ธ อนของคุณหรือคุณต้อง cd ลงใน 'myenv' สำหรับสิ่งนั้น หรือทำไมคุณสร้างไดเรกทอรีย่อยสำหรับสภาพแวดล้อม คำถามโง่ ๆ แต่ฉันไม่เคยใช้มันมาก่อนและมีคำตอบที่แตกต่างกันมากเกินไป อย่างน้อยคำตอบของคุณมีหนึ่งการดาวน์โหลดจากเว็บไซต์ python.org และไม่ใช่ที่เก็บ github ที่ฉันไม่เคยได้ยินมาก่อน ฉันค่อนข้างหวาดระแวงเกี่ยวกับเรื่องแบบนี้
Bill Rosmus

4
สิ่งนี้ยังขาดอยู่ใน 15.04 เช่นกัน
knite

4
สิ่งนี้ยังคงพังอยู่ใน 14.04.2 LTS
tamakisquare

ไม่ใช่ปัญหาของ Ubuntu แต่ฉันมีปัญหาเดียวกันกับ Miniconda
art-solopov

45

สาเหตุ: ทั้ง Ubuntu 14.04 และ Debian มีpyvenv-3.4เครื่องมือที่ใช้งานไม่ได้ ดูUbuntu ข้อผิดพลาด 1290847และDebian ข้อผิดพลาด 732703

โซลูชัน / วิธีแก้ปัญหา (สั้นกว่าคำตอบอื่น):

pyvenv-3.4 --without-pip venvdir
source venvdir/bin/activate
curl https://bootstrap.pypa.io/get-pip.py | python
deactivate
source venvdir/bin/activate

ผมได้อธิบายปัญหานี้ในการสรุปสาระสำคัญของตัวเอง URL ที่ในรหัสนี้จากคำแนะนำการติดตั้ง pip อย่างเป็นทางการ


5
คุณจำเป็นต้องใส่คำนำหน้า 'sudo apt-get install python3.4-venv' - ไม่เช่นนั้นฉันไม่มี 'pyvenv-3.4' ที่สามารถเรียกใช้งานได้บน PATH (Ubuntu 15.04)
Jonathan Hartley

@JonathanHartley: จริง อย่างไรก็ตามข้อผิดพลาดที่กล่าวถึงในคำถาม / คำตอบนี้ไม่มีอยู่ใน Ubuntu 15.04 ดังนั้นการแก้ปัญหาในคำตอบนี้จึงไม่จำเป็น
Denilson Sá Maia

อยากรู้อยากเห็น ผมได้ที่นี่เพราะผมกำลังเห็นปัญหาที่เกิดขึ้นใน 15.04 อา รายการสุดท้ายในข้อผิดพลาด Ubuntu ที่ยาวเกินไปที่คุณลิงค์บอกว่าจำเป็นต้องติดตั้งแพ็คเกจใหม่ python3-venv ซึ่งไม่ใช่การพึ่งพา python3 เพื่อรับการแก้ไข
Jonathan Hartley

@JonathanHartley: ข้อความแสดงข้อผิดพลาดของคุณต้องแตกต่างจากข้อความแสดงข้อผิดพลาด pyvenv-3.4: command not foundข้อผิดพลาดของคุณจะต้อง และใช่การติดตั้งpython3-venvเป็นทางออกสำหรับข้อผิดพลาดของคุณ
Denilson Sá Maia

10

สิ่งนี้น่าจะใช้ได้เช่นกัน:

sudo apt-get install python-virtualenv
virtualenv -p python3 myvenv

หรือดีกว่า:

sudo apt-get install python3-pip
sudo pip3 install virtualenv
virtualenv myvenv


0

วิธีที่ฉันแก้ไขปัญหานี้คือการทำงาน

$ python -m ensurepip

ซึ่งสร้าง stacktrace ที่ลงท้ายด้วยบรรทัดนี้:

FileNotFoundError: [Errno 2] No such file or directory: '/usr/lib64/python3.4/ensurepip/_bundled/setuptools-20.10.1-py2.py3-none-any.whl'

ดังนั้นฉันจึงไปที่https://pypi.python.org/pypi/setuptools/20.10.1แล้วคว้าล้อและวางลงในไดเรกทอรีของฉัน (ซึ่งฉันต้องสร้างด้วยmkdir -p /usr/lib64/python3.4/ensurepip/_bundled/)

จากนั้นวิ่งpython -m ensurepipอีกครั้งฉันก็เผชิญหน้ากับ

No such file or directory: '/usr/lib64/python3.4/ensurepip/_bundled/pip-8.1.1-py2.py3-none-any.whl

ดังนั้นฉันไปที่https://pypi.python.org/pypi/pip/8.1.1จับล้อนั้นและติดมันในไดเรกทอรี

ตอนนี้ฉันสามารถสร้าง virtualenvs python -m venv .venvกับ ที่ประสบความสำเร็จ!


0

ทดสอบบนเดเบียน

 
$ python3.4 -m venv --without-pip env
$ cd env
$ source ./bin/activate # virtualenv activated

$ wget https://bootstrap.pypa.io/get-pip.py # get installation script for pip
$ python3.4 get-pip.py
$ deactivate
$ source venvdir/bin/activate

$ pip list # just to check that pip works!


Debian อยู่นอกหัวข้อที่นี่ ...
Zanna

ขอโทษสำหรับเรื่องนั้น. ฉันหวังว่ามันจะมีประโยชน์เป็นจุดข้อมูลตั้งแต่ Ubuntu ใช้ Debian เป็นฐาน ฉันสามารถลองใช้ Ubuntu VM ได้ในภายหลัง
razorsniper

ที่จะดี :)
Zanna

-1

ฉันพบข้อผิดพลาดนี้เพราะฉันไม่มีpython3-venvแพ็คเกจในระบบของฉัน


1
กรุณาคุณสามารถระบุวิธีการติดตั้งเพื่อให้ผู้อื่นสามารถใช้งานได้เมื่อจำเป็น
George Udosen
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.