美文网首页
阿里云 centos7搭建python3并和python2共存

阿里云 centos7搭建python3并和python2共存

作者: ab64fd4eaee3 | 来源:发表于2018-04-26 15:03 被阅读361次

    注意事项:
    1、非root帐号加上sudo
    2、centos7自带Python 2.7.5是不能卸载的,很多系统级软件依赖这个

    安装依赖

    yum -y groupinstall "Development tools"
    yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
    

    下载python3,我的是Python-3.4.2.tgz

     wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tgz
     mkdir /usr/local/python3 
     tar -zxvf Python-3.6.0.tgz
     cd Python-3.6.0
     ./configure --prefix=/usr/local/python3
     make && make install
     ln -s /usr/local/python3/bin/python3 /usr/bin/python3
    
     ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
    
    

    测试
    查看版本

    python3
    

    Python 3.4.2 (default, Jul 19 2016, 03:47:32)
    [GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux
    Type "help", "copyright", "credits" or "license" for more information.

    代码测试
    在当前目录新建个python脚本hello.py
    内容:
    !/usr/bin/python3

    第一个注释

    print ("Hello, Python3!")
    执行
    python3 hello.py

    Hello, Python3!

    ./configure && make && make install 编译安装和卸载 (Linux)

    正常的编译安装/卸载:

    源码的安装一般由3个步骤组成:配置(configure)、编译(make)、安装(make install)。

    configure文件是一个可执行的脚本文件,它有很多选项,在待安装的源码目录下使用命令./configure –help可以输出详细的选项列表。

    其中--prefix选项是配置安装目录,如果不配置该选项,安装后可执行文件默认放在/usr /local/bin,库文件默认放在/usr/local/lib,配置文件默认放在/usr/local/etc,其它的资源文件放在/usr /local/share,比较凌乱。

    如果配置了--prefix,如:
    $ ./configure --prefix=/usr/local/test

    安装后的所有资源文件都会被放在/usr/local/test目录中,不会分散到其他目录。

    使用--prefix选项的另一个好处是方便卸载软件或移植软件;当某个安装的软件不再需要时,只须简单的删除该安装目录,就可以把软件卸载得干干净净;而移植软件只需拷贝整个目录到另外一个机器即可(相同的操作系统下)。

    当然要卸载程序,也可以在原来的make目录下用一次make uninstall,但前提是Makefile文件有uninstall命令(nodejs的源码包里有uninstall命令,测试版本v0.10.35)。

    关于卸载:

    如果没有配置--prefix选项,源码包也没有提供make uninstall,则可以通过以下方式可以完整卸载:

    找一个临时目录重新安装一遍,如:
    $ ./configure --prefix=/tmp/to_remove && make install

    然后遍历/tmp/to_remove的文件,删除对应安装位置的文件即可(因为/tmp/to_remove里的目录结构就是没有配置--prefix选项时的目录结构)。

    相关文章

      网友评论

          本文标题:阿里云 centos7搭建python3并和python2共存

          本文链接:https://www.haomeiwen.com/subject/axtmlftx.html