web-dev-qa-db-ja.com

Ubuntuのソースコードからpython自分でビルドするにはどうすればよいですか?

Ubuntuには、Python 2.7.2+が事前にインストールされています。(python devパッケージもダウンロードしました。) Apacheが使用するexpatライブラリのバージョンを置換/更新するにはどうすればよいですか? )、Graham Dumpletonは、私のディストリビューションが明示的にPythonまた、外部のpyexpat実装を使用する方法で問題が発生しました。また、ソースコードからPython自分でビルドして問題を解決できると述べました。Ubuntuでこれを行う方法は?私はLinuxが初めてです。)

29
Brian Schmitz
  1. シェルプロンプト(ターミナル内)で、実行します

    Sudo apt-get install build-essential 
    

    これにより、何かをビルドするために必要なすべての共通パッケージ(コンパイラーなど)が取得されます。

  2. 次に実行する

    Sudo apt-get build-dep python2.7
    

    これにより、Pythonのビルドに必要なすべてのライブラリが取得されます。

  3. 次に、pythonのソースコードをダウンロードし、ディレクトリに解凍します。

  4. そこに行って走る

    ./configure --prefix=/path/where/you/want/python/installed
    
  5. 次にmake、次にmake installビルドしてインストールするには:

    make && make install
    

途中で障害が発生した場合は、こちらに戻って質問してください。ガイダンスを提供します。

44
Noufal Ibrahim

「ホットな」非常に最近のpython(githubから))をビルドする最良の方法は次のとおりです。

_  Sudo apt-get update \
  && Sudo 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-generic 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 \
  && Sudo make install
_

Githubのソースから最新のpythonをビルドします。

これでPython 3.8.0a0 (heads/master:077059e0f0, Aug 10 2018, 21:36:32)を構築しました。

28
Suman Khanal

pyenv を使用してみてください。まだ試していません。しかし、ソースを見ると、任意の* ixシステムにCPythonインタープリターをインストールすることは非常に成熟しているようです。

6
funky-future

Python自分でビルドするための優れたソリューションは pythonbrew です。これによりプロセスが自動化され、複数の異なるバージョンをインストールできるだけでなく、簡単にそれらを選択できます。

2016年、pyenvとPyRunは最も実行可能なソリューションです。

2
pyroscope