2011-11-11 16 views
18

Ubuntu, Python 2.7.2+ önceden yüklenmiş olarak gelir. (Ayrıca python dev paketlerini de yükledim.) Başka bir sorun nedeniyle (How do I replace/update the version of the expat library used by Apache?'da aşırı derinlikte açıklanmıştır) Graham Dumpleton, distro'mın Python'u bir harici pyexpat uygulaması kullanacak şekilde açıkça oluşturduğunu söyledi. konu. Ayrıca sorunu çözmek için Python'u kaynak koddan oluşturabileceğimi de söyledi. Bunu Ubuntu'da nasıl yapardım? (A terminal) bir kabuk istemindeUbuntu'daki kaynak koddan python'u kendim nasıl oluşturabilirim?

+0

Burada bir cevap alamıyorsanız, bu soru daha fazla Ubuntu milleti tarafından görülebilir askubuntu.com –

+1

Bu gerçekten ubuntu özgü değil, bu yüzden burada iyi olduğunu düşünüyorum. Çeşitli yığın değiş tokuş sahaları bence önemli ölçüde çakışıyor. –

cevap

23
  1. (. Linux yeniyim unutmayın) (

    sudo apt-get install build-essential 
    

    Bu şey inşa için gereken tüm ortak paketleri alıp bunu çalıştırmak örneğin derleyici vb.

  2. Sonra

    sudo apt-get build-dep python2.7 
    

    Bu piton oluşturmak için gereken tüm kütüphaneleri alıp bunu çalıştırın.

  3. Sonra piton için kaynak kodunu indirip bir dizine açmak. Yolda sorunlarla karşılaşıldı ise

    make && make install 
    

, buraya soruyorum:

  • inşa ve monte almak için daha sonra make install oraya gitmek ve koşmak

    ./configure --prefix=/path/where/you/want/python/installed 
    
  • Sonra make ve ve biraz rehberlik sunmaya çalışacağım.

  • +1

    "Sudo apt-get build-dep python2.7" yi çalıştırdığımda, "E: sources.list'inize bazı 'source' URI'leri yerleştirmelisiniz". Herhangi bir fikir? (Ayrıca, küçük yan not: Ben ilk komutta "gerekli" nin sonunda -s olmadan "sudo apt-get install build-essential" yazmak istediğini düşünüyorum.onlar mod_wsgi ile kullanmak istediğiniz gibi Python bina ve Python dinamik olarak gömülü sistemler yüklenmesi için ideal değildir varsayılan olarak paylaşılan kütüphaneleri oluşturmak vermediğinde) –

    +2

    Onlar da enable-paylaşılan seçeneği gerekir. –

    +0

    "Onlar" nedir? Ne için kastediyorsun? Ayrıca, bundan önce hata mesajını nasıl çözebilirim? Sources.list'e bir şey eklemem gerekir mi? –

    2

    Python'un kendinize üstün bir çözümü, işlemi otomatik hale getiren pythonbrew olup, yalnızca birkaç farklı sürümü kurmanıza değil, aynı zamanda bunlar arasında kolayca seçim yapmanıza da olanak tanır.

    2016 yılında, pyenv ve PyRun en uygun çözümlerdir.

    +2

    +1. Ne kadar olgun? Kişisel deneyiminiz var mı? –

    +0

    @ Nufal İbrahim: Ben ['pythonz'] (https://github.com/saghul/pythonz) (pythonbrew'ın basitleştirilmiş bir çatalı) kullanıyorum. Reklamı yapılan gibi çalışır: kaynakları indirme ve bunları elle oluşturma işlemini otomatik hale getirir. – jfs

    +2

    Bu araç artık korunmuyor. –

    4

    pyenv kullanmayı deneyebilirsiniz. Henüz denemedim. Ancak kaynaklara bakıldığında, herhangi bir * ix sistemi üzerinde herhangi bir CPython yorumlayıcısının kurulumunu gerçekleştirmek çok olgun görünüyor. aşağıdaki gibi

    6

    (github itibaren) "sıcak" çok yeni piton inşa etmek en iyi yoldur:

    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 
    

    Bu github üzerinde kaynaklardan çok yeni piton oluşturur.

    Bunun ile Python 3.7.0a0 (heads/master:60a6632a3d, Aug 5 2017)'u oluşturduk.

    İlgili konular