一.查看python版本及安装python3
1. which python 可以看到预装的是2.7版本
2.安装依赖包
yum -y groupinstall "Development tools"
yum install gcc
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
3.根据需求安装自己所需要的版本
wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz
4.创建要安装的目录
mkdir /usr/local/python3
5.把压缩包移动到这个路径,并解压
mv Python-3.6.2.tar.xz /usr/local/python3
tar -xvf Python-3.6.2.tar.xz #解压到当前文件夹
6.进入这个目录
cd /usr/local/python3
7.指定安装目录(应该先进入解压出来的文件夹,也就是configure所在的文件夹)
这一步一般用来生成 Makefile,为下一步的编译做准备,你可以通过在 configure 后加上参数来对安装进行控制,比如代码:
./configure --prefix=/usr/local/python3
上面的意思是将该软件安装在/usr/local/python3下面,执行文件就会安装在 /usr/local/python3(而不是默认的 /usr/local/bin),资源文件就会安装在/usr/local/python3/share(而不是默认的/usr/local/share)。
同时一些软件的配置文件你可以通过指定 --sys-config= 参数进行设定。有一些软件还可以加上 --with、--enable、--without、--disable 等等参数对编译加以控制,你可以通过允许 ./configure --help 察看详细的说明帮助。
8.编译和安装
make:大多数的源代码包都经过这一步进行编译(当然有些perl或python编写的软件需要调用perl或python来进行编译)。
如果 在 make 过程中出现 error ,你就要记下错误代码(注意不仅仅是最后一行),然后你可以向开发者提交 bugreport(一般在 INSTALL 里有提交地址),或者你的系统少了一些依赖库等,这些需要自己仔细研究错误代码。
make 的作用是开始进行源代码编译,以及一些功能的提供,这些功能由他的 Makefile 设置文件提供相关的功能,比如 make install 一般表示进行安装,make uninstall 是卸载,不加参数就是默认的进行源代码编译。
make 是 Linux 开发套件里面自动化编译的一个控制程序,他通过借助 Makefile 里面编写的编译规范进行自动化的调用 gcc 、ld 以及运行某些需要的程序进行编译的程序。一般情况下,他所使用的 Makefile 控制代码,由 configure 这个设置脚本根据给定的参数和系统环境生成。
make insatall:这条命令来进行安装(当然有些软件需要先运行 make check 或 make test来进行一些测试),这一步一般需要你有 root 权限(因为要向系统写入文件)
make && make install
9.配置环境变量
~/.bash_profile # 这个是用户环境变量配置文件
/etc/profile # 系统环境变量配置文件
1.线查看当前环境变量
echo $PATH
2.编辑环境变量3.重新加载profile文件
vim /etc/profile
在里面添加PATH
PATH=‘你的python路径’:上面的环境变量(否则会把以前的环境变量全部替换掉)
PATH=/usr/local/python3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
source /etc/profile
10.测试是否成功
11.删除安装包(本人强迫症)
cd /usr/local/python3
rm -rf Python-3.6.2(刚刚解压的那个文件夹)
二.扩展(关于在linux安装软件的流程)
Linux下源码的安装一般由3个步骤组成:配置(configure)、编译(make)、安装(make install),具体的安装方法一般作者都会给出文档,
这里主要讨论配置(configure)。Configure是一个可执行脚本,它有很多选项,使用命令./configure –help输出详细的选项列表,如下: -bash-3.00# ./configure --help Usage: configure [options] [host] Options: [defaults in brackets after descriptions] Configuration: --cache-file=FILE cache test results in FILE --help print this message --no-create do not create output files --quiet, --silent do not print `checking...' messages --version print the version of autoconf that created configure Directory and file names: --prefix=PREFIX install architecture-independent files in PREFIX [/usr/local] --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX [same as prefix] --bindir=DIR user executables in DIR [EPREFIX/bin] ……….(省略若干) 很多的选项,你可以忽略其他的一切,但请把—prefix加上。这里以安装python35为例,我们打算把它安装到目录/usr/local/python35,于是在python35目录执行带选项的脚本
./configure --prefix=/usr/local/python35
执行成功后
再编译、安装(make && make install)
安装完成将自动生成目录python35而且该软件所有的文件都被复制到这个目录。
为什么要指定这个安装目录?
是为了以后的维护方便,如果没有用这个选项,安装过程结束后,该软件所需的软件被复制到不同的系统目录下,很难弄清楚到底复制了那些文件、都复制到哪里去了—基本上是一塌糊涂。 用了—prefix选项的另一个好处是卸载软件或移植软件。
当某个安装的软件不再需要时,只须简单的删除该安装目录,就可以把软件卸载得干干净净;移植软件只需拷贝整个目录到另外一个机器即可(相同的操作系统)。 一个小选项有这么方便的作用,建议在实际工作中多多使用