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

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

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

./configuremakemake install

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

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

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

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

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

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

tar -xvf Python-$version.tgzcd Python-$version

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

./configuremakesudo checkinstall

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

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

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

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

नवीनतम उबंटू रिलीज के लिए इसे दस्तावेज करना जारी रखें1 : उबंटू 16.04.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 * python3Try: 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.7Reading package lists... DoneBuilding dependency tree       Reading state information... DoneThe following additional packages will be installed:  libpython2.7-minimal libpython2.7-stdlib python2.7-minimalSuggested packages:  python2.7-doc binutils binfmt-supportThe following NEW packages will be installed:  libpython2.7-minimal libpython2.7-stdlib python2.7 python2.7-minimal0 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 pythonpython3 is /usr/bin/python3python2.7 is /usr/bin/python2.7python3.5 is /usr/bin/python3.5bash: type: python2: not foundbash: type: python: not found

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

$ type pip3 pip2 pipbash: type: pip3: not foundbash: type: pip2: not foundbash: 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 installerpython-pip-whl - alternative Python package installerpython3-pip - alternative Python package installer - Python 3 version of the package

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

$ sudo apt-get install python-pipReading package lists... DoneBuilding dependency tree       Reading state information... DoneThe 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-devSuggested 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-docThe 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-dev0 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/python3python2 is /usr/bin/python2python is /usr/bin/pythonpython2.7 is /usr/bin/python2.7python3.5 is /usr/bin/python3.5

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

$ type pip pip2 pip3pip is /usr/bin/pippip2 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-pipReading package lists... DoneBuilding dependency tree       Reading state information... DoneThe following additional packages will be installed:  libpython3-dev libpython3.5-dev python3-dev python3-setuptools python3-wheel python3.5-devSuggested packages:  python-setuptools-docThe following NEW packages will be installed:  libpython3-dev libpython3.5-dev python3-dev python3-pip python3-setuptools python3-wheel python3.5-dev0 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 pip3python is /usr/bin/pythonpython2 is hashed (/usr/bin/python2)python3 is hashed (/usr/bin/python3)pip is /usr/bin/pippip2 is /usr/bin/pip2pip3 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)

और एक आखिरी बात इससे पहले कि आप जा सकें और अपने सभी पसंदीदा पायथन पीवाईपीआई मॉड्यूल स्थापित करना शुरू कर सकें: आपको शायद पीआईपी को अपग्रेड करना होगा (पीआईपी 2 और पीआईपी 3 दोनों, अलग-अलग; इसके अलावा, इससे कोई फर्क नहीं पड़ता 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}).


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

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

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

#Install Pyenvgit clone https://github.com/pyenv/pyenv.git ~/.pyenvexport PATH=~/.pyenv/bin:/usr/local/hadoop/bin/:$PATHecho 'export PYENV_ROOT="~/.pyenv"' >> ~/.bash_profileecho 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profileecho 'eval "$(pyenv init -)"' >> ~/.bash_profile#Install Pythonpyenv install 2.7.8pyenv global 2.7.8pyenv install 3.4.5pyenv global 3.4.5

ज्यादातर का एक दर्पण यह जवाब एक ट्वीक इंट्रो के साथ

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

जैसा कि कुछ उपयुक्त-रेपो-आधारित विकल्पों (जैसे डेडस्नेक) के विपरीत है, यह आम तौर पर रिलीज के उसी दिन काम करेगा pyenv update क्योंकि आपको किसी और के पैकेज का इंतजार करने की जरूरत नहीं है । उन सभी संस्करणों को देखें जिनके साथ आप इंस्टॉल कर सकते हैं pyenv install --list

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

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

    sudo apt-get install -y gitsudo 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. इंस्टॉलर स्क्रिप्ट चलाएं (मूल लेखक द्वारा पाइनव और कुछ बहुत उपयोगी पाइनव प्लगइन्स स्थापित करता है; देखें यहाँ अधिक के लिए)

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

    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. अजगर/पाइप, आदि के साथ आप जो करना चाहते हैं वह करें । यह तुम्हारा है ।

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

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

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

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

    1. यदि आपने इंस्टॉलर स्क्रिप्ट का उपयोग नहीं किया है, तो संभवतः आपने केवल रूट पाइनव पैकेज स्थापित किया है । देखें पाइनव-वर्चुअलएन्व प्लगइन जोड़ने के निर्देशों के लिए
    2. यदि आपने इंस्टॉलर स्क्रिप्ट का उपयोग किया है, तो जांचें कि क्या यह इसके साथ दिखाई देता है pyenv commands.

एक समय में, मुझे लगता है कि उबंटू पर पायथन का नएवर संस्करण स्थापित करने के लिए यह पूछा गया था । अब, उबंटू पर पायथन का बूढ़ा संस्करण स्थापित करना आवश्यक है (क्योंकि हमें बहुत सी चीजों के लिए पायथन 2.7 की आवश्यकता होती है) । … टीएल; डीआर: यह उत्तर अब वर्तमान/सही नहीं है । इसके बजाय, पायथन 3 को डिफ़ॉल्ट रूप से स्थापित किया गया है (और शायद एक न्यूनतम पायथन 2 । एक्स), फिर चलाएं:`सुडो एप्ट-गेट इंस्टॉल पायथन-2.7 पायथन-पाइप’

जार्गनजंकी आप ऑफ-टॉपिक हैं, लेकिन सही हैं । यदि प्रश्न है _" मैं उबंटू 2.7 पर पायथन 16.04+ कैसे स्थापित करूं " _ जो यह है (चूंकि 16.04 अब उपलब्ध है, जो मेरा बिंदु है), तो आप बस सूडो एपीटी-गेट पायथन 2.7 स्थापित करें । यह न केवल आसान है, यह एकमात्र सही उत्तर है, क्योंकि यह एकमात्र तरीका है जिससे आप उपयुक्त-जीईटी और बदले में उनकी निर्भरता के माध्यम से पायथन मॉड्यूल स्थापित करने में सक्षम होंगे ।

@ माइकल_एन आप किस बारे में बात कर रहे हैं? स्रोत से संकलन इस उत्तर को गलत या पुराना नहीं बनाता है । यह सिर्फ एक अलग तरीका है । जरूरत पड़ने पर आप अपने लिए प्रक्रिया को स्वचालित करने के लिए उपयुक्त का उपयोग कर सकते हैं ।

यू यू क्या जरूरत का उपयोग करें । मैं वास्तव में यह नहीं देखता कि यह आपके पुराने होने के दावे का समर्थन कैसे करता है । जैसा कि आपने स्वयं कहा था, यू इसका उपयोग तब करें जब आपको आवश्यकता हो क्योंकि यह उपलब्ध नहीं हो सकता है । उदाहरण के लिए, लिनक्स के लिए विंडोज सबसिस्टम कुछ दिनांकित सॉफ्टवेयर पैकेजों का उपयोग करता है, यहां तक कि डिस्ट्रो उबंटू 16.04.1 (बीटा) है और पायथन 2.6.2 का उपयोग करता है, और पायथन 3 यहां तक कि वर्तमान पायथन 2.7.12 है । थाय मामले में, अगर मुझे अप-टू-डेट पैकेज चाहिए तो मुझे संकलन करना चाहिए

आशा है कि यह वर्णन करने में मदद करता है (जोड़ा गया उत्तर) । पायथन पारिस्थितिकी तंत्र बहुत विशेष/बारीक है, और यदि आप अपने पायथन वातावरण का सावधानीपूर्वक निर्माण नहीं करते हैं तो आप आसानी से “निर्भरता नरक” में आ सकते हैं software installation - How do I install the latest Python 2.7.X or 3.X on Ubuntu? - Ask Ubuntu

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