Ubuntu预装了Python 2.7.2+。 (我也下载了python开发包)。由于我遇到了另一个问题( 如何replace/更新Apache使用的expat库的版本,我深刻的解释了这个问题 ),Graham Dumpleton告诉我,我的发行版已经明确地build立Python的方式来使用外部pyexpat实现,所以造成我的问题。 他还说,我可以从源代码自己构buildPython来解决这个问题。 我将如何做到这一点在Ubuntu上? (请记住,我是Linux新手。)
在shell提示符下(在终端中),运行
sudo apt-get install build-essential
这将获取你需要建立任何东西的所有常用软件包(例如编译器等)。
然后运行
sudo apt-get build-dep python2.7
这将获取您需要构建python的所有库。
然后下载python的源代码并将其解压缩到一个目录中。
去那里跑
./configure --prefix=/path/where/you/want/python/installed
然后make
,然后make install
以获取它的内置和安装:
make && make install
如果您在路上遇到困难,请回到这里,我将尽力提供一些指导。
你可以尝试使用pyenv 。 我还没有尝试过。 但是从源头上看,在任何* ix系统上安装任何CPython解释器似乎已经非常成熟。
建立“热”非常新的Python(从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。
有了这个我已经建立了Python 3.7.0a0 (heads/master:60a6632a3d, Aug 5 2017)
。
自己构建Python的优秀解决方案是pythonbrew ,它可以自动执行这个过程,并且不仅可以安装多个不同的版本,还可以轻松地在它们之间进行选择。
在2016年,pyenv和PyRun是最可行的解决方案。