在我们开始装机的时候
很多选的是最小化安装(就会缺少很多软件包,依赖包)
所以在编译安装py3,mysql,nginx等软件的时候,就会依赖于这些组件的基础运行
解决这个依赖包的问题吧,最好的方式就是 yum install *****
一,首先解决依赖包
yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel -y
二,下载python源代码(可以选择一个版本)
注意:这里没有指明路径,需切换进/opt 目录 ,下载之后会在opt下,当前在哪里就下载到哪里
wget https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tar.xz
三,解压缩python源代码
xz -d Python-3.7.3.tar.xz 去掉xz ls tar -xf Python-3.7.3.tar
四,切换进入python源代码目录
cd /opt/Python-3.7.3
五.开始编译安装,释放编译文件
./configure --prefix=/opt/python373/#此时还不会生成这个文件夹! prefix的含义,指定了路径
六,开始编译,编译安装
make make install #直到这两步走完,才会生成。创建 /opt/python373/ 以上两步可以合并成 make && make install 一步来实现
相关解释:
shell编程中的命令有时和C语言是一样的。&&表示与,||表示或。把两个命令用&&联接起来,如 make mrproper && make menuconfig,表示要第一个命令执行成功才能执行第二个命令。 对执行顺序有要求的命令能保证一旦有错误发生,下面的命令不会盲目地继续执行。 ./configure是用来检测你的安装平台的目标特征的。比如它会检测你是不是有CC或GCC,并不是需 要CC或GCC,它是个shell脚本。 #这个confiure脚本执行后,会生成一个Makefile文件 make是用来编译的,它从Makefile中读取指令,然后编译。 make install是用来安装的,它也从Makefile中读取指令,安装到指定的位置。
七.检查你自己制定的安装路径,/opt/python373/
查看/opt/python373/bin目录 ls,python3的可执行命令都在bin底下了
八,配置软连接,快捷启动python3和pip3
ln -s /opt/python373/bin/python3 /usr/bin/python3 ln -s /opt/python373/bin/pip3 /usr/bin/pip3
rm -rf /usr/bin/python3 可以删除软连接
九,配置系统环境变量,配置PATH,加入python3的目录(可以不用软连接,直接写入系统环境变量使其生效)
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/opt/python373/bin/ echo $PATH 看下系统环境变量把/opt/python373/bin/加到后面
#上一步也可以用以下这一步 ,不过建议别用了,错了其他命令也丢失了
PATH=$PATH:/opt/python373/bin/
十,写入个人配置文件,永久生效/etc/profile
vim /etc/profile #编辑个人配置文件,写入PATH PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/opt/python373/bin/ 或者PATH=$PATH:/opt/python373/bin/ source /etc/profile #读取一下配置文件,生效配置
到此Python3就已经安装成功啦