मैं उबंटू पर नवीनतम पायथन 2.7.X या 3.X कैसे स्थापित करूं?


183

मैं http://python.org/download/ से डाउनलोड किए गए उबंटू पर नवीनतम पायथन टारबॉल स्थापित करना चाहता हूं ।

क्या यह स्थापित करने का एक सही तरीका है?

./configure
make
make install

यदि नहीं, तो मैं कैसे करूँ?


1
एक समय में, मुझे लगता है कि यह उबंटू पर अजगर का एक नया संस्करण स्थापित करने के लिए कहा गया था । अब, उबंटू पर अजगर के एक पुराने संस्करण को स्थापित करना आवश्यक है (क्योंकि हमें अभी भी बहुत सारी चीजों के लिए अजगर 2.7 की आवश्यकता है) ... tl; dr: यह उत्तर अब चालू / सही नहीं है। इसके बजाय, संभालने python3 डिफ़ॉल्ट रूप से स्थापित किया गया है (और शायद एक न्यूनतम python2.x), तो चलाएं:sudo apt-get install python-2.7 python-pip
michael

@michael_n तुम किस बारे में बात कर रहे हो? स्रोत से संकलन इस उत्तर को गलत या पुराना नहीं बनाता है। इसकी बस एक अलग विधि है। यदि आवश्यक हो तो आप प्रक्रिया को स्वचालित करने के लिए उपयुक्त का उपयोग कर सकते हैं।

आप क्या जरूरत है? मैं वास्तव में नहीं देखता कि यह आपके इस पुराने होने के दावे का समर्थन कैसे करता है। जैसे आपने स्वयं कहा, यू का उपयोग तब करें जब आपको आवश्यकता हो क्योंकि यह उपलब्ध नहीं हो सकता है। उदाहरण के लिए, लिनक्स के लिए विंडोज़ सबसिस्टम कुछ दिनांकित सॉफ्टवेयर पैकेजों का उपयोग करता है, यहां तक ​​कि डिस्ट्रो ubuntu 16.04.1 (बीटा) भी है और python2.6.2 का उपयोग करता है, और python3 यहां तक ​​कि वर्तमान python2.7.12 है। अगर मैं अप-टू-डेट पैकेज चाहता हूं तो मुझे

1
@jargonjunkie आप ऑफ-टॉपिक हैं, लेकिन सही है। यदि प्रश्न "मैं ubuntu 16.04+ पर अजगर 2.7 कैसे स्थापित करूं" जो कि यह है (16.04 के बाद से अब उपलब्ध है, जो मेरी बात है), तो आप बस sudo apt-get install python2.7। यह केवल आसान नहीं है, यह एकमात्र सही उत्तर है, क्योंकि यह एकमात्र तरीका है जिसे आप उपयुक्त-माध्यम से अजगर मॉड्यूल स्थापित करने और बदले में उनकी निर्भरता को संभालने में सक्षम होंगे।
माइकल

उम्मीद है कि यह चित्रण (अतिरिक्त उत्तर) में मदद करता है। अजगर इकोसिस्टम बहुत विशेष / बारीक है, और आप आसानी से "निर्भरता नरक" में पहुंच सकते हैं यदि आप सावधानी से अपने अजगर के माहौल से नहीं पूछें askubuntu.com/a/831075/17060
michael

जवाबों:


199

सबसे पहले, कुछ निर्भरताएँ स्थापित करें:

sudo apt-get install build-essential checkinstall
sudo apt-get install libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev

फिर निम्न कमांड का उपयोग करके डाउनलोड करें:

version=2.7.13
cd ~/Downloads/
wget https://www.python.org/ftp/python/$version/Python-$version.tgz

निकालें और निर्देशिका में जाएं:

tar -xvf Python-$version.tgz
cd Python-$version

अब, आपके द्वारा अभी-अभी स्थापित की गई कमांड का उपयोग करके इंस्टॉल करें, checkinstallयदि आवश्यक हो तो अनइंस्टॉल करना आसान बनाने के बजाय इसका उपयोग करें :

./configure
make
sudo checkinstall

versionआपको जो भी संस्करण की आवश्यकता है ( version=2.7.1या version=3.6.0, उदाहरण के लिए) में बदलें ।


20
डिफ़ॉल्ट पायथन संस्करण के रूप में इसका उपयोग sudo make installऔर altinstallसेट न करने के लिए
शगुन सोढानी

का उपयोग CXX=g++ ./configureकरता है, तो कॉन्फ़िगर एक चेतावनी कह जी मुद्दों ++ नहीं मिला था
SRJ

2
ऊपर निर्देश के रूप में स्थापित करने के बाद, मैं कंसोल में चलाने के लिए क्या आज्ञा देता हूं कि यह जांचना कि वास्तव में यह स्थापित है?
J86

9
यह बहुत ही असाधारण है कि सरल प्रश्न "पायथन को कैसे स्थापित करें" का सबसे अच्छा उत्तर इतनी भयानक चेतावनी को ले जाएगा, यह "यह सबसे अच्छा तरीका है जिसे हम पायथन को स्थापित करने के लिए जानते हैं और यह आपके सिस्टम को बहुत अच्छी तरह से तोड़ सकता है" ... यह भी है बहुत आश्चर्य की बात है कि आधिकारिक पायथन वेबसाइट में डाउनलोड का भार है और इंस्टाल निर्देशों का एक भी पेज नहीं है।
patb

4
pat - सरल प्रश्न "अजगर को कैसे स्थापित करें" का सबसे अच्छा उत्तर है sudo apt-get install python, अधिक जटिल उत्तर " नवीनतम अजगर को कैसे स्थापित किया जाए ", इसका अर्थ है "स्रोत से"। आपके पास किसी भी OS पर एक ही मुद्दा होगा जब तक कि आप 3rd पार्टी से प्रीक्लेम्ड बायनेरिज़ को स्थापित नहीं कर रहे हैं, जो फिर से, किसी भी OS पर जोखिम भरा है (और अलग-अलग OS में बहुत भिन्न होता है)। इसके अलावा यह उत्तर 2012 से है; हाल ही की सलाह के लिए, पूछें ।ububuntu.com
माइकल

181

जब तक आप वास्तव में इसे खुद को संकलित करने की एक जलती हुई इच्छा नहीं रखते हैं, तब तक पसंदीदा तरीका डेडस्नेक्स पीपीए का उपयोग करना है जो कि पायथन के संस्करणों को स्थापित करना है जो डिफ़ॉल्ट रूप से शामिल नहीं हैं:

sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt-get update
sudo apt-get install python2.7

अन्य संस्करण, जैसे python2.4या python3.6, आदि भी उपलब्ध हैं।


13
कार्यक्रम नोट: यदि आप 10.04 पर हैं, तो आपको ऐड-ऑप्ट-रिपॉजिटरी का उपयोग करने से पहले अजगर-सॉफ़्टवेयर-गुण स्थापित करने की आवश्यकता हो सकती है।
क्रेग मैलोनी

3
आपके स्थानीय परिवेश में अजगर बनाने की सिफारिश की गई है, इसे प्री-बिल्ड बायनेरिज़ से स्थापित करने के बजाय
pylover

16
+1 :)really have a burning desire to compile it yourself
वाट

5
यह उल्लेख करने के लिए याद किया जाता है कि: 1. ppaआधिकारिक तौर पर समर्थन नहीं किया गया है, इसलिए स्रोत से निर्माण करने का सबसे सुरक्षित तरीका है। 2. इसके परिणामस्वरूप एक वैश्विक अजगर होगा, जो गैर- sudoस्थानीय पैकेजों को संशोधित या स्थापित नहीं कर सकता, न कि स्थानीय। 3. स्रोत से निर्माण करके विभिन्न स्थानों पर स्थानीय रूप से कई अजगर स्थापित किए जा सकते हैं।
Ioannis Filippidis

2
apt-get install python2.7यह अजगर के बजाय बाइनरी python2.7 स्थापित करें ... बदसूरत !!
धवल

26

उबंटू 16.04.1 सर्वर के लिए नवीनतम उबंटू रिलीज़ 1 : के लिए इसे जारी रखना जारी है , डिफ़ॉल्ट पायथन संस्करण 3.5 है, और पायथन 2.7 डिफ़ॉल्ट रूप से स्थापित नहीं है। एक ताजा स्थापित करने पर (ध्यान दें कि कोई pythonनिष्पादन योग्य भी नहीं है ):

$ type python3 python2 python 
python3 is /usr/bin/python3
-bash: type: python2: not found
-bash: type: python: not found

$ python3 --version 
Python 3.5.2

$ python --version 
The program 'python' can be found in the following packages:
 * python-minimal
 * python3
Try: sudo apt install <selected package>

नोट: आगे बढ़ने से पहले, तो आप शायद एक त्वरित क्या करना चाहते हैं जाएगा sudo apt-get update, sudo apt-get upgradeऔर sudo apt-get dist-upgrade(टिप्पणी कृपया वास्तव में क्या इन आदेशों कर वास्तव में कर रहे हैं, मैं एक नए सिरे से यहां स्थापित संभालने कर रहा हूँ।)

अजगर 2.7 स्थापित करना उतना ही आसान है:

$ sudo apt-get install python2.7

अजगर 2.7 स्थापित करने का प्रारंभिक आउटपुट निम्नानुसार है:

$ sudo apt-get install python2.7
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  libpython2.7-minimal libpython2.7-stdlib python2.7-minimal
Suggested packages:
  python2.7-doc binutils binfmt-support
The following NEW packages will be installed:
  libpython2.7-minimal libpython2.7-stdlib python2.7 python2.7-minimal
0 upgraded, 4 newly installed, 0 to remove and 0 not upgraded.
Need to get 3,735 kB of archives.
After this operation, 15.8 MB of additional disk space will be used.
Do you want to continue? [Y/n] Y
...etc, etc...

अजगर 2.7 स्थापित करने के बाद,

$ type python3 python2.7 python3.5 python2 python
python3 is /usr/bin/python3
python2.7 is /usr/bin/python2.7
python3.5 is /usr/bin/python3.5
bash: type: python2: not found
bash: type: python: not found

लेकिन अभी भी एक समस्या है, क्योंकि आप अभी तक PyPI मॉड्यूल को स्थापित नहीं कर सकते हैं pip- उदाहरण के लिए, यदि आप जिप् टर नोटबुक, या नवीनतम स्किपी या सुन्न (आदि) चाहते हैं, तो आप इंस्टॉल करना चाहते हैं pipऔर फिर pip installउन, और अभी भी बदल रहे हैं ग्रेविज़ या कोर सिस्टम लाइब्रेरी जैसी apt-getकिसी भी आवश्यक सिस्टम निर्भरता को स्थापित करने के लिए ।

$ type pip3 pip2 pip
bash: type: pip3: not found
bash: type: pip2: not found
bash: type: pip: not found

$ python3 -m pip --version 
/usr/bin/python3: No module named pip

तो पाइप को स्थापित करने के लिए, फिर से, यह उतना आसान है sudo apt-get install python-pip:

$ sudo apt-cache search -n pip | egrep '^python[0-9]*-pip'
python-pip - alternative Python package installer
python-pip-whl - alternative Python package installer
python3-pip - alternative Python package installer - Python 3 version of the package

आपको python-pipPython 2.7 pipऔर python3-pipPython 3 के लिए दोनों की आवश्यकता होगी pip। के माध्यम से स्थापना apt-getआवश्यक निर्भरता स्थापित करने के लिए सुनिश्चित है; उदाहरण के लिए, यहाँ pip2 स्थापित करने के लिए आउटपुट है:

$ sudo apt-get install python-pip
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  binutils build-essential dpkg-dev fakeroot g++ g++-5 gcc gcc-5 libalgorithm-diff-perl
  libalgorithm-diff-xs-perl libalgorithm-merge-perl libasan2 libatomic1 libc-dev-bin libc6-dev
  libcc1-0 libcilkrts5 libdpkg-perl libexpat1-dev libfakeroot libfile-fcntllock-perl libgcc-5-dev
  libgomp1 libitm1 liblsan0 libmpx0 libpython-all-dev libpython-dev libpython-stdlib libpython2.7
  libpython2.7-dev libquadmath0 libstdc++-5-dev libtsan0 libubsan0 linux-libc-dev make
  manpages-dev python python-all python-all-dev python-dev python-minimal python-pip-whl
  python-pkg-resources python-setuptools python-wheel python2.7-dev
Suggested packages:
  binutils-doc debian-keyring g++-multilib g++-5-multilib gcc-5-doc libstdc++6-5-dbg gcc-multilib
  autoconf automake libtool flex bison gdb gcc-doc gcc-5-multilib gcc-5-locales libgcc1-dbg
  libgomp1-dbg libitm1-dbg libatomic1-dbg libasan2-dbg liblsan0-dbg libtsan0-dbg libubsan0-dbg
  libcilkrts5-dbg libmpx0-dbg libquadmath0-dbg glibc-doc libstdc++-5-doc make-doc python-doc
  python-tk python-setuptools-doc
The following NEW packages will be installed:
  binutils build-essential dpkg-dev fakeroot g++ g++-5 gcc gcc-5 libalgorithm-diff-perl
  libalgorithm-diff-xs-perl libalgorithm-merge-perl libasan2 libatomic1 libc-dev-bin libc6-dev
  libcc1-0 libcilkrts5 libdpkg-perl libexpat1-dev libfakeroot libfile-fcntllock-perl libgcc-5-dev
  libgomp1 libitm1 liblsan0 libmpx0 libpython-all-dev libpython-dev libpython-stdlib libpython2.7
  libpython2.7-dev libquadmath0 libstdc++-5-dev libtsan0 libubsan0 linux-libc-dev make
  manpages-dev python python-all python-all-dev python-dev python-minimal python-pip
  python-pip-whl python-pkg-resources python-setuptools python-wheel python2.7-dev
0 upgraded, 49 newly installed, 0 to remove and 0 not upgraded.
Need to get 61.1 MB of archives.
After this operation, 169 MB of additional disk space will be used.
Do you want to continue? [Y/n] Y
...etc...

एक दिलचस्प बात यह है कि इसके परिणामस्वरूप होता है: अब आपके पास "मानक" (और पीईपी की सिफारिश की गई है) python2और python3(जो कि केवल अजगर 2.7 और अजगर 3.5 के लिए सहानुभूति रखते हैं):

$ type python3 python2 python python2.7 python3.5 
python3 is /usr/bin/python3
python2 is /usr/bin/python2
python is /usr/bin/python
python2.7 is /usr/bin/python2.7
python3.5 is /usr/bin/python3.5

तुम भी चाहोगे sudo apt-get install python3-pip; स्थापित करने से पहले, आपके पास:

$ type pip pip2 pip3
pip is /usr/bin/pip
pip2 is /usr/bin/pip2
-bash: type: pip3: not found

$ python2 -m pip --version 
pip 8.1.1 from /usr/lib/python2.7/dist-packages (python 2.7)

$ python3 -m pip --version 
/usr/bin/python3: No module named pip

स्थापित करने के बाद pip3,

$ sudo apt-get install python3-pip
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  libpython3-dev libpython3.5-dev python3-dev python3-setuptools python3-wheel python3.5-dev
Suggested packages:
  python-setuptools-doc
The following NEW packages will be installed:
  libpython3-dev libpython3.5-dev python3-dev python3-pip python3-setuptools python3-wheel python3.5-dev
0 upgraded, 7 newly installed, 0 to remove and 0 not upgraded.
Need to get 38.0 MB of archives.
After this operation, 55.2 MB of additional disk space will be used.
Do you want to continue? [Y/n] 
...etc...

परिणामी संस्करण:

$ type python python2 python3 pip pip2 pip3
python is /usr/bin/python
python2 is hashed (/usr/bin/python2)
python3 is hashed (/usr/bin/python3)
pip is /usr/bin/pip
pip2 is /usr/bin/pip2
pip3 is /usr/bin/pip3

$ pip --version 
pip 8.1.1 from /usr/lib/python2.7/dist-packages (python 2.7)

$ pip3 --version 
pip 8.1.1 from /usr/lib/python3/dist-packages (python 3.5)

$ python2 -m pip --version 
pip 8.1.1 from /usr/lib/python2.7/dist-packages (python 2.7)

$ python3 -m pip --version 
pip 8.1.1 from /usr/lib/python3/dist-packages (python 3.5)

और एक आखिरी बात इससे पहले कि आप जा सकते हैं और अपने सभी पसंदीदा अजगर PyPI मॉड्यूल को स्थापित करना शुरू कर सकते हैं: आपको संभवतः पाइप को खुद ही अपग्रेड करना होगा (pip2 और pip3 दोनों, अलग-अलग; साथ ही, यह कोई फर्क नहीं पड़ता कि pipक्या pythonनिष्पादन योग्य के माध्यम से लागू किया गया है या नहीं; pipनिष्पादन योग्य, वास्तविक अपग्रेड /usr/lib) में संग्रहीत हैं :

$ sudo -H python2 -m pip install --upgrade pip
...
$ sudo -H python3 -m pip install --upgrade pip
...

अब आप या तो स्टैंड-अलोन चला सकते हैं pipया संस्करण python( भीतर python -m pip {command}) से बंडल कर सकते हैं ।


[१] ऐतिहासिक पुनरावर्तन: पुराने उबंटू में केवल पायथन २.६ था, इस प्रकार पायथन २. installed+ स्थापित करने के लिए सभी विभिन्न विधियाँ। बाद में, Python 2.7 को सार्वजनिक रिपॉजिटरी में शामिल करने के बाद, हमारे पास अभी भी नवीनतम सुधारों के साथ नवीनतम Python 2.7 को स्थापित करने के लिए एक ही चुनौती थी, जो अक्सर आवश्यक थी। आज की स्थिति बहुत बेहतर / सरल है: वर्तमान पायथन 2.7 और 3.5 (मूल रूप से केवल दो पायथन प्लेटफ़ॉर्म संस्करण जिनके बारे में लोग ध्यान रखते हैं) जो अब सार्वजनिक रेपो में बहुत स्थिर हैं, इसलिए अब हमें केवल नवीनतम स्थापित करने के बारे में चिंता करना होगा अजगर मॉड्यूल , नवीनतम अजगर नहीं । इसलिए अब पायथन "नवीनतम संस्करण की समस्या" आंशिक रूप से OS aptरिपोज और & से PyPI & में बदल गई है pip।)


2
उबंटू 16.04.1 LTS पर सफलतापूर्वक अजगर अजगर 2.7 को स्थापित करने और इस तरह के निर्देशों का पालन करें: sudo apt-get install python2.7; sudo apt-get install पायथन-पाइप; sudo -H python2 -m pip install --upgrad पाइप; # चेकिंग वर्जन: $ पाइप --version -> पाइप 9.0.1 from /usr/local/lib/python2.7/dist-packages (पायथन 2.7); $ अजगर - विचलन -> पायथन 2.7.12
रॉबर्ट

मेरी अज्ञानता को क्षमा करें लेकिन क्या मैं जान सकता हूं कि पायथन संस्करणों को दिखाने के दौरान "हैशेड" का क्या मतलब है?
विफल वैज्ञानिक

1
@ तलहा इरफान यह एक अच्छा सवाल है (और, यदि आप एक सरलीकृत जवाब देने की अनुमति देंगे): जब एक कमांड को बैश में टाइप किया जाता है (जैसा कि w / अधिकांश गोले), तो cmd एक उपनाम, फ़ंक्शन, या निष्पादन योग्य पाया जा सकता है $PATH। Env var PATHनिर्देशिकाओं की एक लंबी सूची है, जिसमें हजारों फाइलें हैं। निष्पादन योग्य खोजने में तेजी लाने के लिए, शेल त्वरित लुकअप के लिए कैश्ड हैशटेबल का उपयोग करता है। यह बासी बन सकता है, इसलिए "हैशेड" आपको बता सकता है कि यह "याद किया गया" है यह कमांड उस निष्पादन योग्य फ़ाइल के लिए मैप किया गया है unix.stackexchange.com/questions/5609/…
माइकल

@michael बहुत बहुत धन्यवाद! यह वास्तव में उपयोगी उत्तर है: संक्षिप्त और बिंदु से!
विफल वैज्ञानिक

1
@ जिया आप एक अलग सवाल पूछना चाहते हैं, क्योंकि अधिक संख्या में आगे और पीछे यह पता लगाने की आवश्यकता हो सकती है (या अगर मैंने इसे लिखा है तो कुछ भी बदल गया है)। शायद, पहले सत्यापित करें कि दोनों pip (2.7) और pip3(3.x) पूरी तरह से स्थापित किया गया / उन्नत बनाया, और सिर्फ पूर्व नहीं - यानी, sudo apt-get install python-pip python3-pipऔर sudo -H python2 -m pip install --upgrade pipऔर sudo -H python3 -m pip install --upgrade pip ... या अगर यह वास्तव में एक अनुमति मुद्दा है (द्वारा "यह साथ काम करता है संकेत दिया sudo "), फिर इसे ट्रैक करना थोड़ा और मुश्किल होने वाला है।
माइकल

11

12.04

यदि आप अचु के उत्तर का अनुसरण कर रहे हैं , तो शब्द libread5-devको बदल दिया जाना चाहिए libreadline-gplv2-dev। तो पूरा कमांड होगा:

sudo apt-get install libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev

4

आप इसे pyenv के माध्यम से डाउनलोड और इंस्टॉल भी कर सकते हैं

#Install Pyenv
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
export PATH=~/.pyenv/bin:/usr/local/hadoop/bin/:$PATH
echo 'export PYENV_ROOT="~/.pyenv"' >> ~/.bash_profile
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(pyenv init -)"' >> ~/.bash_profile

#Install Python
pyenv install 2.7.8
pyenv global 2.7.8

pyenv install 3.4.5
pyenv global 3.4.5

यह उबंटू के पुराने संस्करण पर पायथन के वास्तव में अद्यतित संस्करण प्राप्त करने का सबसे साफ तरीका है। यह वर्चुअलाइजेशन सपोर्ट के साथ-साथ pyenv-virtualenvप्लगइन के माध्यम से , अलग-अलग मॉड्यूल आवश्यकताओं के साथ अनुप्रयोगों को बिना किसी झंझट के स्थापित करना आसान बनाता है।
रिचवेल

2
पाइनेव के बारे में दो चेतावनियाँ: (1) यह केवल बैश शेल (या शायद zsh, लेकिन निश्चित रूप से डैश नहीं है जो उबुन्टु पर / बिन / श) से काम करता है, और (2) इसके लिए एक लॉगिन शेल (जैसे bash --login) की आवश्यकता होती है , जो नहीं है हमेशा आसान से प्राप्त करने के लिए जैसे Ansible। इंटरैक्टिव उपयोग के लिए सर्वश्रेष्ठ, स्क्रिप्टिंग सर्वर के लिए कम अच्छा है।
रिचवेल

0

ज्यादातर इस जवाब का एक दर्पण एक चिकने परिचय के साथ

मैं pyenv की सिफारिश करूंगा । यह हेडर निर्भरता (नीचे देखें) को स्थापित करने से अलग निर्माण प्रक्रिया को स्वचालित करता है। आप केवल कह कर अजगर के एक नए (या पुराने) संस्करण का निर्माण और स्थापित कर सकते हैं pyenv install 3.6.0। सब कुछ आपके उपयोगकर्ता के रूप में चलता है, इसलिए आपको उबंटू द्वारा उपयोग किए गए पायथन को गड़बड़ करने के बारे में चिंता करने की आवश्यकता नहीं है ।

जैसा कि कुछ apt-repo- आधारित विकल्पों (जैसे deadsnakes) के विपरीत है, यह आम तौर पर रिलीज़ के एक ही दिन काम करेगा pyenv updateक्योंकि आपको इसे पैकेज करने के लिए किसी और की प्रतीक्षा करने की आवश्यकता नहीं है। उन सभी संस्करणों को देखें जिन्हें आप स्थापित कर सकते हैंpyenv install --list

पाइंव स्थापित करें

  1. CPythons के निर्माण के लिए आवश्यक उपकरण और हेडर स्थापित करें (PyPy या Jython जैसे विदेशी अजगर अन्य निर्भरता हो सकते हैं)। Git का उपयोग pyenv द्वारा किया जाता है, साथ ही यह स्रोत शाखाओं के बिल्ड / इंस्टॉल को भी सक्षम बनाता है, इसलिए आप अभी जो भी 3.8 स्थापित कर सकते हैं, वह है अर्थात CPHthon की मास्टर शाखा GitHub से ताज़ा:

    sudo apt-get install -y git
    sudo apt-get install -y build-essential libbz2-dev libssl-dev libreadline-dev \
                            libffi-dev libsqlite3-dev tk-dev
    
    # optional scientific package headers (for Numpy, Matplotlib, SciPy, etc.)
    sudo apt-get install -y libpng-dev libfreetype6-dev    
    
  2. इंस्टॉलर स्क्रिप्ट चलाएँ (मूल लेखक द्वारा pyenv और कुछ बहुत ही उपयोगी pyenv प्लगइन्स स्थापित करता है; अधिक जानकारी के लिए यहां देखें )

    curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
  3. अपने ~/.profileया ~/.bashrc(यह स्थापित स्क्रिप्ट के अंत में उल्लेख है) के लिए init लाइनें जोड़ें :

    export PATH="~/.pyenv/bin:$PATH"
    eval "$(pyenv init -)"
    eval "$(pyenv virtualenv-init -)"
    
  4. अपने शेल को पुनरारंभ करें ( exec $SHELLप्रोफ़ाइल खोलें या खोलें ) या प्रोफ़ाइल स्क्रिप्ट पुनः लोड करें। (उदाहरण के साथ source ~/.bashrc)

किया हुआ!

एक वातावरण की स्थापना

सिस्टम पायथन को नहीं छूने के लिए (आमतौर पर एक बुरा विचार; ओएस-स्तरीय सेवाएं कुछ विशिष्ट पुस्तकालय संस्करणों पर निर्भर हो सकती हैं, आदि) अपना खुद का वातावरण बनाएं, यह आसान है! इससे भी बेहतर, नहीं sudo, इसके लिए या pipस्थापित!

  1. अपना पसंदीदा पायथन संस्करण स्थापित करें (यह स्रोत डाउनलोड करेगा और इसे आपके उपयोगकर्ता के लिए बनाएगा, कोई इनपुट की आवश्यकता नहीं है)

    pyenv install 3.6.0
  2. इसे एक वर्चस्व बनाएं ताकि आप चाहें तो बाद में दूसरों को बना सकें

    pyenv virtualenv 3.6.0 general
  3. इसे विश्व स्तर पर सक्रिय करें (अपने उपयोगकर्ता के लिए)

    pyenv global general
  4. आप पायथन / पाइप, आदि के साथ क्या करना चाहते हैं, यह तुम्हारा है।

यदि आप अपने पुस्तकालयों को बाद में साफ करना चाहते हैं, तो आप virtualenv ( pyenv uninstall general) हटा सकते हैं या एक नया बना सकते हैं ( pyenv virtualenv 3.6.0 other_proj)। आपके पास वातावरण सक्रिय प्रति-निर्देशिका भी हो सकता है: आपके वर्तमान फ़ोल्डर में pyenv local other_projएक .python-versionफ़ाइल को छोड़ देगा और किसी भी समय आप पायथन या पाइप-स्थापित पायथन उपयोगिताओं को इसमें से या इसके तहत आह्वान करेंगे, उन्हें pyenv द्वारा शर्मिंदा किया जाएगा।

समस्या निवारण

  • bash: pyenv: command not found, fish: Unknown command 'pyenv'

    1. अपनी जांच करें $PATH, एक प्रविष्टि होनी चाहिए जो कुछ इस तरह से समाप्त हो .pyenv/bin। यदि यह गायब है, तो सुनिश्चित करें कि आपने ऊपर स्थापित pyenv के तहत # 3 और # 4 (अपने शेल को पुनरारंभ करें) का पालन किया है।
  • pyenv: no such command 'virtualenv'

    1. यदि आपने इंस्टॉलर स्क्रिप्ट का उपयोग नहीं किया है, तो आप केवल रूट pyenv पैकेज स्थापित करते हैं। प्लगइन जोड़ने के निर्देशों के लिए pyenv-virtualenv देखें
    2. यदि आपने इंस्टॉलर स्क्रिप्ट का उपयोग किया है, तो जांचें कि क्या यह दिखाता है pyenv commands
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.