यदि आप पाइथन के कई संस्करण स्थापित करते हैं (मेरे पास वर्तमान में डिफ़ॉल्ट 2.5 है, स्थापित 3.0.1 और अब 2.6.2 स्थापित है), यह स्वचालित रूप से /usr/local
में सामान रखता है, और यह /Library/Frameworks/Python/Versions/theVersion/bin
को शामिल करने के पथ को भी समायोजित करता है, लेकिन उस बिंदु का क्या होता है जब /usr/local
पहले ही पाथ पर है, और सभी स्थापित संस्करण (डिफ़ॉल्ट 2.5 को छोड़कर, जो /usr/bin
में है) वहां हैं? मैंने .bash_profile
में अपने पैथ से पाइथन फ्रेमवर्क पथ हटा दिए, और मैं अभी भी "python -V" => "Python 2.5.1"
, "python2.6 -V" => "Python 2.6.2"
, "python3 -V" => "Python 3.0.1"
टाइप कर सकता हूं। बस सोच रहा है कि यह इसे /usr/local
में क्यों रखता है, और पैथ भी बदलता है। और क्या मैंने ठीक किया? धन्यवाद।ओएस एक्स - एकाधिक पायथन संस्करण, पथ और/यूएसआर/स्थानीय
इसके अलावा, 2.6 स्थापना 2.6 करने के लिए /usr/local/bin
बिंदु में यह वर्तमान 'से एक बना दिया, 2.6 करने के लिए .../Python.framework/Versions/Current
बिंदु है।, तो सादे' अजगर 'बातें है, लेकिन यह कोई फर्क नहीं पड़ता क्योंकि usr/bin
पहले आता है और साथ बातें वहां एक ही नाम 2.5 सामान इंगित करता है .. वैसे भी, 2.5 तेंदुए के साथ आता है, मैंने 3.0.1 स्थापित किया है बस नवीनतम संस्करण (जिसमें एक डीएमजी फ़ाइल है), और अब मैंने pygame के साथ उपयोग के लिए 2.6.2 स्थापित किया है।
संपादित करें: ठीक है, मैं इसे समझता हूं। जब आप इंस्टॉल करते हैं, तो कहते हैं, पायथन 2.6.2: सिम्लिंक का एक गुच्छा /usr/local/bin
में जोड़ा जाता है, इसलिए जब एक पाइथन स्क्रिप्ट में #! /usr/local/bin/python
शेबैंग होता है, तो यह चलाएगा, और /Applications/Python 2.6
में, पायथन लॉन्चर को चलाने के लिए डिफ़ॉल्ट एप्लिकेशन बनाया जाएगा। पीई फाइलें, जो /usr/local/bin/pythonw
का उपयोग करती हैं, और /Library/Frameworks/Python.framework/Versions/2.6/bin
पथ के मोर्चे पर बनाई और जोड़ दी गई है, इसलिए which python
में पाइथन मिलेगा, और #! /usr/bin/env python
शेबैंग की इच्छा ठीक से चल जाएगी।
पायथन के वर्चुअलनेव पैकेज के बारे में क्या? यह एक मशीन पर एकाधिक पायथन इंस्टॉलेशन होने का एक काफी लोकप्रिय तरीका प्रतीत होता है। क्या अन्य उपयोगकर्ताओं ने इसे अपने ओएस एक्स मशीनों पर किया है? – Foofy