2014-06-30 10 views
5

मैं निम्न कमांड के साथ एक नया pyvenv वातावरण स्थापित:कॉल सही पिप

python3.4 -m venv env 
source env/bin/activate 

हालांकि, जब मैं which pip कहते हैं, मैं निम्नलिखित मिल: /usr/bin/pip। जाहिर है, सिस्टम व्यापक पाइप स्थापना अभी भी उपयोग किया जाता है। अगर मैं pyvenv प्रलेखन को देखो, यह कहा गया है:

संस्करण 3.4 में परिवर्तित: डिफ़ॉल्ट रूप से पिप इंस्टॉल, --without-पिप जोड़ा गया है और विकल्प

और यह --copies है सही, जब मेरे सक्रिय वातावरण में पिप स्थापित करने के लिए कोशिश कर रहा है, मैं निम्नलिखित मिल:

आवश्यकता पहले से ही करने की तारीख: ./env/local/lib/python3.4/dist-packages

में पिप

मैं कैसे सुनिश्चित कर सकता हूं कि जब मैं अपने सक्रिय वातावरण में पाइप कहूं, तो पायवेन पीपी कहा जाता है?

+0

एनवी को नए टर्मिनल में सक्रिय करने का प्रयास करें। क्या यह अभी भी गलत लिपि पर इंगित करता है? – davidism

+0

'कौन से pip3' –

+0

@ डेविडिज्म हां, अगर मैं एक नए टर्मिनल में env को सक्रिय करता हूं तो यह अभी भी गलत स्क्रिप्ट को इंगित करता है। वर्चुअलएन्व के साथ एक env बनाते समय यह सब काम करता है, लेकिन यह वास्तव में किसी तीसरे पक्ष के अनुप्रयोग का उपयोग करने के लिए समझ में नहीं आता है अगर इसे पायथन 3.4 में भी काम करना चाहिए। – hY8vVpf3tyR57Xib

उत्तर

0

मुझे एक ही समस्या थी, मैंने अपने वेबहोस्ट (वेबफैक्शन) से पूछा और एक उत्कृष्ट प्रतिक्रिया मिली। Understanding pyvenv and pip in virtual environments with python 3.4 and above पृष्ठ नीचे संक्षेप में है।

ऐसा लगता है कि आपको चिंता करने की ज़रूरत नहीं है कि आपके वर्चुअल वातावरण का कौन सा पाइप उपयोग कर रहा है। जब तक आपका वर्चुअल वातावरण सक्रिय न हो, तब तक इसमें कोई भी पैकेज स्थापित किया जाएगा, भले ही किस पीआईपी का उपयोग किया जाए।

पायथन 3.4 वर्चुअल वातावरण के बारे में एक बात यह है कि यदि पैकेज Python's new "wheel" package format का समर्थन नहीं करता है, तो पैकेज वर्चुअल वातावरण निर्देशिका के अंदर स्थापित नहीं होगा। हालांकि यह वर्चुअल वातावरण के साथ अभी भी एक कनेक्शन बनाए रखेगा।

इस अजीबता के कारण, मैंने केवल pyvenv-3.4 के बजाय वर्चुअलएन्व का उपयोग करने का विकल्प चुना और सब कुछ अपेक्षित के रूप में काम किया।

1

आपके जैसा लगता है (और मैं अपने पिछले उत्तर में) bug के प्रभाव देख रहा था। सब कुछ pyvenv-3.4 के नए संस्करणों में काम कर रहा प्रतीत होता है।

$ pwd 
~/test 
$ pyvenv-3.4 myenv 
$ source myenv/bin/activate 
(myenv)$ which pip 
~/test/myenv/bin/pip 
0

मुद्दा उबंटू 14.10 पर तय किया गया है।

और यदि आपने Centos6 पर निम्न आदेश द्वारा पायथन 3.4 स्थापित किया है।

yum install http://dl.iuscommunity.org/pub/ius/stable/CentOS/6/x86_64/python34u-3.4.2-1.ius.centos6.x86_64.rpm

आप एक नया टर्मिनल फिर से खोलना चाहिए (या अपने सिस्टम दोबारा लॉगिन)।

यह मेरे लिए काम करता है। सौभाग्य।

संबंधित मुद्दे