可能存在的问题
yum安装、源码安装、二进制安装用哪个,官网文档是源码安装,所以咱们就用源码安装
在源码安装的时候会有什么问题
一个是默认路径的问题,在编译的时候时候如果不指定路径的话,很多二进制文件会安装到默认的目录下/usr/bin下面,系统原来的文件可能还会有,但是各种链接会指向新的二进制文件,这样有可能会造成系统内某些依赖原来版本python的服务依会出现问题,一个已知的是yum会出现问题。那么解决的方法就是在configure的时候制定一个不一样的路径,可以是/usr/local(这样pyhon的各个文件会散落在/usr/local的各个目录里面),可以是/usr/local/python3(这样python所有的文件都会集中到/usr/local/python3里面),当然也可以是任何你喜欢的地方比如(/home/user/Software/python3),放在哪里我觉得都可以,参考文档是放到/usr/local里面这样的好处是,默认的path路径里面就包含/usr/local,那么当你安装好之后,直接就可以调用命令而不用再修改PATH。其实我偏向于用/usr/local/python3。
make altinstall的问题,如果用make install,在安装完新版本的python之后,新旧两个版本的python可执行文件(python2 python3)都会被链接到python这个可执行文件上,这会出现一些问题。如果用make altinstall,在安装完之后,不会建立软链接。
Unicode python经历了一个漫长和复杂的历史过程才支持了unicode,所以如果你没有别的什么特殊需求的话,在安装2.7的时候请务必添加UTF-32支持,虽然会增加内存的使用但是增加了兼容性。python3.3以上不存在这个问题。在configure的时候加上这句–enable-unicode=ucs4
动态库(shared library) 现代所有的linux发行版都把python编程成共享库,有些第三方的工具像mod_wsgi或者Blender都是依赖于这个共享库的,所以在安装新版本的python的时候最好能把这个编译成共享库。在configure的时候加上LDFLAGS=”-Wl,-rpath /usr/local/lib”
前置安装
yum -y update
yum groupinstall 'Development Tools'
yum install -y zlib-devel bzip2