2011-11-11 5 views
18

उबंटू पायथन 2.7.2+ पूर्व-स्थापित के साथ आता है। (मैंने पायथन देव पैकेज भी डाउनलोड किए हैं।) एक और समस्या के कारण मुझे (How do I replace/update the version of the expat library used by Apache? में चरम गहराई में समझाया गया है), ग्राहम डंपप्टन ने मुझे बताया कि मेरे डिस्ट्रो ने बाहरी पायक्सेट कार्यान्वयन का उपयोग करने के लिए स्पष्ट रूप से पायथन बनाया है, जिससे मेरा कारण बनता है मुद्दा। उन्होंने यह भी कहा कि मैं इस मुद्दे को हल करने के लिए पाइथन को स्रोत कोड से खुद बना सकता हूं। उबंटू पर मैं यह कैसे करूं? एक सुरक्षा प्रॉम्प्ट (एक टर्मिनल में) (ध्यान रखें मैं लिनक्स के लिए नए कर रहा हूँ।)मैं उबंटू पर स्रोत कोड से खुद को पाइथन कैसे बनाऊंगा?

+0

यदि आपको यहां कोई जवाब नहीं मिलता है, तो यह सवाल askubuntu.com –

+1

पर अधिक उबंटू लोगों द्वारा देखा जा सकता है यह वास्तव में उबंटू विशिष्ट नहीं है, इसलिए मुझे लगता है कि यह ठीक है। विभिन्न स्टैक एक्सचेंज साइटों में मेरी राय में काफी ओवरलैप है। –

उत्तर

23
  1. , चलाने

    sudo apt-get install build-essential 
    

    यह सभी आम संकुल आप कुछ भी निर्माण करने की आवश्यकता है लायेगा (उदाहरण के लिए कंपाइलर आदि)।

  2. फिर चलाने

    sudo apt-get build-dep python2.7 
    

    यह सभी पुस्तकालयों आप अजगर का निर्माण करने की जरूरत है लायेगा।

  3. फिर पायथन के लिए स्रोत कोड डाउनलोड करें और इसे निर्देशिका में डिक्रॉप करें।

  4. वहाँ जाने के लिए और चलाने के

    ./configure --prefix=/path/where/you/want/python/installed 
    
  5. फिर make और फिर make install यह बनाया गया है और स्थापित पाने के लिए:

    make && make install 
    

आप रास्ते पर snags मारा, तो यहाँ वापस पूछना और मैं कुछ मार्गदर्शन देने की कोशिश करूंगा।

+1

जब मैं 'सुडो एपीटी-बिल्ड बिल्ड-डीप पायथन 2.7' चला गया, तो उसने कहा "ई: आपको अपने स्रोतों में कुछ 'स्रोत' यूआरआई रखना होगा। सूची"। कोई उपाय? (इसके अलावा, नाबालिग साइड नोट: मुझे लगता है कि आपको पहले कमांड में "आवश्यक" के अंत में बिना 'सुडो एपीटी-इंस्टाल बिल्ड-जरूरी' लिखना था।) –

+2

उन्हें पाइथन बनाने के दौरान -एनेबल-साझा विकल्प की भी आवश्यकता है क्योंकि वे इसे mod_wsgi और पायथन के साथ उपयोग करना चाहते हैं, डिफ़ॉल्ट रूप से साझा लाइब्रेरीज़ नहीं बनाते हैं जो गतिशील रूप से एम्बेडेड सिस्टम लोड करने के लिए आदर्श नहीं है। –

+0

"वे" क्या हैं? आप क्या बात कर रहे हैं? इसके अलावा, इससे पहले, मैं त्रुटि संदेश को कैसे हल करूं? क्या मुझे स्रोतों में कुछ जोड़ने की ज़रूरत है। सूची? –

2

पायथन बनाने के लिए बेहतर समाधान pythonbrew है, जो प्रक्रिया को स्वचालित करता है और आपको न केवल कई अलग-अलग संस्करण स्थापित करने की अनुमति देता है, बल्कि आसानी से उनके बीच भी चयन करता है।

2016 में, पायनव और पायरुन सबसे व्यवहार्य समाधान हैं।

+2

+1। यह कितना परिपक्व है? क्या आपके पास व्यक्तिगत अनुभव है? –

+0

@NoufalIbrahim: मैं ['pythonz'] (https://github.com/saghul/pythonz) का उपयोग करता हूं (' पायथनब्रे' का सरलीकृत कांटा)। यह विज्ञापित के रूप में काम करता है: यह स्रोतों को डाउनलोड करने और उन्हें हाथ से बनाने की प्रक्रिया को स्वचालित करता है। – jfs

+2

यह उपकरण अब बनाए रखा नहीं है। –

4

आप pyenv का उपयोग करने का प्रयास कर सकते हैं। मैंने अभी तक कोशिश नहीं की है। लेकिन सूत्रों को देखते हुए, यह किसी भी * ix-system पर किसी भी सीपीथन-दुभाषिया की स्थापना को पूरा करने के लिए बहुत परिपक्व प्रतीत होता है।

6

'हॉट' अभी हाल ही में अजगर (GitHub से) के निर्माण के लिए सबसे अच्छा तरीका है इस प्रकार है:

sudo apt-get update \ 
    && apt-get install -y build-essential git libexpat1-dev libssl-dev zlib1g-dev \ 
    libncurses5-dev libbz2-dev liblzma-dev \ 
    libsqlite3-dev libffi-dev tcl-dev linux-headers-amd64 libgdbm-dev \ 
    libreadline-dev tk tk-dev 

    git clone https://github.com/python/cpython.git 
    cd cpython && ./configure --prefix=/usr \ 
    --enable-loadable-sqlite-extensions \ 
    --enable-shared \ 
    --with-lto \ 
    --enable-optimizations \ 
    --with-system-expat \ 
    --with-system-ffi \ 
    --enable-ipv6 --with-threads --with-pydebug --disable-rpath \ 
    && make \ 
    && make install 

यह GitHub पर स्रोतों से बहुत हाल अजगर बनाता है।

इसके साथ मैंने Python 3.7.0a0 (heads/master:60a6632a3d, Aug 5 2017) बनाया है।

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