2012-04-18 13 views
9

हटाने के बाद मैक पर पुराने पथ मांगता है मुझे ब्रू इंस्टॉल पाइथन के माध्यम से पाइथन की क्लीन स्थापना के बाद निम्न त्रुटि मिल रही है। लिंक पिछले पायथन स्थापना से संबंधित है जिसे मैंने मैन्युअल रूप से हटा दिया है।पाइथन डुप्लिकेट पायथन इंस्टॉलेशन

$ virtualenv ENV 
python: posix_spawn: /System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python: No such file or directory 

मैं MacOS 10.7.3 का उपयोग कर रहा हूँ और मैं स्थापित virtualenv पिप के माध्यम से:

$ sudo /usr/local/share/python/pip install virtualenv 
Downloading/unpacking virtualenv 
Downloading virtualenv-1.7.1.2.tar.gz (2.1Mb): 2.1Mb downloaded 
Running setup.py egg_info for package virtualenv 

warning: no previously-included files matching '*.*' found under directory 'docs/_templates' 
Installing collected packages: virtualenv 
Running setup.py install for virtualenv 

warning: no previously-included files matching '*.*' found under directory 'docs/_templates' 
Installing virtualenv script to /usr/local/share/python 
Successfully installed virtualenv 
Cleaning up... 
$ virtualenv ENV 
python: posix_spawn: /System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python: No such file or directory 

कैसे मैं इसे ठीक कर सकते हैं?

संपादित करें: मैंने मैकॉक्स को पुनर्स्थापित किया और अब मेरी पिछली स्थिति पर वापस लौटा जिसने मुझे पूर्वस्थापित पाइथन हटा दिया।

$ which python 
/Library/Frameworks/Python.framework/Versions/2.7/bin/python 
$ which pip /usr/local/bin/pip $ sudo pip install virtualenv 
Downloading/unpacking virtualenv 
Downloading virtualenv-1.7.1.2.tar.gz (2.1Mb): 2.1Mb downloaded 
Running setup.py egg_info for package virtualenv 

warning: no previously-included files matching '*.*' found under directory 'docs/_templates' 
Installing collected packages: virtualenv 
Running setup.py install for virtualenv 

warning: no previously-included files matching '*.*' found under directory 'docs/_templates' 
Installing virtualenv script to /usr/local/bin 
Successfully installed virtualenv 
Cleaning up... 


$ python virtualenv.py ENV 
/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/‌​MacOS/Python: can't open file 'virtualenv.py': [Errno 2] No such file or directory 

virtualenv.py /Library/Python/2.7/site-packages/virtualenv.py और /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/ पर स्थित है py2app/व्यंजनों/virtualenv.py लेकिन किसी भी तरह पाइथन सभी याद आती है।

इतनी गड़बड़ क्यों है? मुझे इसे ठीक करने के लिए कैसे आगे बढ़ना चाहिए?

+0

आपको पहले जवाब [यहां लिंक] से पढ़ने का लाभ हो सकता है (http: // stackoverflow।कॉम/प्रश्न/12188 9 1/बहु-संस्करण-ऑफ-पायथन-ऑन-ओएस-एक्स-तेंदुए) और फिर वह लिंक पढ़ रहा है जो वह उत्तर प्रदान करता है। चीजों के ऐप्पल-स्थापित संस्करणों को हटाने के लिए आमतौर पर एक भयानक विचार होता है (यह एक कारण है कि मैं मैक पर विकसित करने से इनकार करता हूं)। – ely

+0

मैं पहले से ही ब्रू का उपयोग कर रहा था। उस लिंक में ज्यादातर मैकपॉर्ट्स पर चर्चा। – cgl

उत्तर

15

मैं बहुत ही स्थिति के बाद हटाने का बेवकूफ बात किया था पूरे /System/Library/Frameworks/Python.framework/ त्रुटि में क्या परिणाम:

python: posix_spawn: /System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python: No such file or directory

मैं बहाल करने में कामयाब यह, क्योंकि मेरी पूरी डिस्क की पिछली प्रतिलिपि थी, और बस पूरे पायथन.फ्रेमवर्क निर्देशिका को प्रतिलिपि बनाकर।

मैं कितना प्रणाली निर्भर है पता नहीं है, लेकिन अगर किसी को है कि बजाय पूरे ओएस एक्स फिर से स्थापित करने का एक ही तरीका है, पूरे Python.framework मुझ से संकुचित करने के लिए यहाँ है की कोशिश करना चाहते हैं: http://andilabs.com/Python.framework.zip

+1

अपलोड @andi के लिए धन्यवाद, लेकिन यह अब ऑनलाइन नहीं है। क्या आप फिर से उस Python.framework.zip अपलोड कर सकते हैं? –

+0

@ स्टीफनब्रुकर्ट लिंक अब काम करना चाहिए। का आनंद लें! – andi

+1

बहुत बढ़िया, धन्यवाद! –

7

ऐसा लगता है कि आपने ऐप्पल द्वारा आपूर्ति किए गए पायथन 2.7 को हटा दिया है जो ओएस एक्स 10.7 का हिस्सा है। यह करना एक बुरी बात है। आपके पास ओएस एक्स के अनजाने में टूटे हुए हिस्सों हो सकते हैं जो इस पर निर्भर करते हैं। आम तौर पर, /usr (/usr/local के अलावा) या /System/Library में कुछ भी कभी भी हटाएं। यदि आप किसी चीज़ का एक नया संस्करण स्थापित करते हैं, तो इसे हटाकर नहीं, $ PATH के माध्यम से प्रबंधित करें। करने के लिए सबसे अच्छी लंबी अवधि की चीज है जिसे आपने हटा दिया है उसे पुनर्स्थापित करें; ऐसा करने का सबसे सुरक्षित तरीका ओएस एक्स को पुनर्स्थापित करना है। एक अस्थायी वर्कअराउंड /usr/bin/python को रास्ते से बाहर ले जाना और /usr/local/bin/python2.7 पर एक लिंक के साथ प्रतिस्थापित करना है, लेकिन आपको वास्तव में अपने सिस्टम को नुकसान पूर्ववत करना चाहिए।

अद्यतन: अब जब आपने सिस्टम पायथन (अच्छा!) को पुनर्स्थापित किया है, तो हम आपके मूल मुद्दे पर जा सकते हैं। अधिक जानकारी के बिना, मैं केवल अनुमान लगा सकता हूं लेकिन संभावना है कि आप गलत पाइथन उदाहरण में virtualenv इंस्टॉल कर रहे हैं। ध्यान रखें कि आपको Distribute (या इसके पूर्ववर्ती, setuptools) की एक प्रति स्थापित करने की आवश्यकता है, जो easy_install कमांड प्रदान करता है, और पाइथन के प्रत्येक उदाहरण में pip की एक अलग प्रतिलिपि प्रदान करता है जिसे आप उपयोग करना चाहते हैं। यदि आप easy_install का उपयोग करते हैं जो कि ओएस एक्स के साथ ऐप्पल जहाजों, तो आप ऐप्पल सिस्टम पायथन पर स्थापित हो जाएंगे। आप टिप्पणी में brew का उपयोग करके उल्लेख करते हैं। यदि ऐसा है, तो आपको the instructions and recipes for it का पालन करना चाहिए; यही कारण है कि आपके पास पैकेज प्रबंधक है। लेकिन यहाँ कैसे आप स्क्रैच से सब कुछ स्थापित होता है:

$ which python 
/Library/Frameworks/Python.framework/Versions/2.7/bin/python 
$ curl -O http://python-distribute.org/distribute_setup.py 
$ python distribute_setup.py 
[...] 
creating /Library/Frameworks/Python.framework/Versions/2.7.3_release_10.6/lib/python2.7/site-packages/distribute-0.6.26-py2.7.egg 
Extracting distribute-0.6.26-py2.7.egg to /Library/Frameworks/Python.framework/Versions/2.7.3_release_10.6/lib/python2.7/site-packages 
Adding distribute 0.6.26 to easy-install.pth file 
Installing easy_install script to /Library/Frameworks/Python.framework/Versions/2.7/bin 
Installing easy_install-2.7 script to /Library/Frameworks/Python.framework/Versions/2.7/bin 

Installed /Library/Frameworks/Python.framework/Versions/2.7.3_release_10.6/lib/python2.7/site-packages/distribute-0.6.26-py2.7.egg 
Processing dependencies for distribute==0.6.26 
Finished processing dependencies for distribute==0.6.26 
After install bootstrap. 
Creating /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg-info 
Creating /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/setuptools.pth 
$ curl -O https://raw.github.com/pypa/pip/master/contrib/get-pip.py 
$ python get-pip.py 
$ which pip 
/Library/Frameworks/Python.framework/Versions/2.7/bin/pip 
$ pip install virtualenv 
[...] 
    Installing virtualenv script to /Library/Frameworks/Python.framework/Versions/2.7/bin 
Successfully installed virtualenv 
Cleaning up... 
$ which virtualenv 
/Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenv 
$ virtualenv ENV 
New python executable in ENV/bin/python 
Installing setuptools............done. 
Installing pip...............done. 
$ source ENV/bin/activate 
(ENV)$ which python 
/Users/nad/ENV/bin/python 
(ENV)$ 
+0

समस्या यही है इसलिए मैंने पहले स्थान पर पूर्व-स्थापित पायथन हटा दिया था। मैंने एक पुनर्स्थापित किया है। $ जो अजगर /Library/Frameworks/Python.framework/Versions/2.7/bin/python $ जिसे PIP /usr/स्थानीय/bin/ $ sudo पिप पिप स्थापित virtualenv डाउनलोड कर रहा है/खोल virtualenv .... $ python virtualenv.py ENV /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python: फ़ाइल 'virtualenv.py' नहीं खोल सकता: [Errno 2] ऐसी कोई फ़ाइल नहीं या निर्देशिका – cgl

+0

कृपया मेरे संपादन को ऊपर देखें – cgl