前言

  • 我们都知道在Linux中的软件包都是一个一个rpm可执行文件,并且安装软件的时候总会有很多的依赖关系,下面安装python3.8的时候采用的是源码编译安装的形式,因此也需要解决很多的依赖关系,当然我把安装所依赖的软件包全都列了出来,大家只需要复制粘贴安装即可,安装期间遇到了很多坑,下面也会将解决方案一一列出来

编译安装三部曲

第一步:首先解决安装依赖关系,需要安装以下软件包,复制粘贴即可
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

linux python安装源码包 linux安装python3.8_编译安装

第二步:下载Python的源码包(Python3.8)

我这里是通过win下载好,传输到Linux中的,大家也可以直接用下面的命令下载,建议下载到linux下的/opt文件夹中

这里有一个坑是有的人可能无法从win中直接通过Xshell拖到Linux中,这里需要安装一个lrzsz软件就行了
yum -y install lrzsz
wget https://www.python.org/ftp/python/3.8.0/Python-3.8.0.tgz

linux python安装源码包 linux安装python3.8_python_02

  • 解压python源码包
tar -zxvf Python-3.8.0.tgz  解压后如下图所示

linux python安装源码包 linux安装python3.8_linux python安装源码包_03

第三步:释放编译文件,并进行编译安装
  • 进入Python源码包,释放编译文件

这一步一般用来生成 Makefile,为下一步的编译安装做准备,可以通过在 configure 后加上参数来对安装进行控制。

./configure --prefix=/opt/python380/ 	#prefix为指定安装目录
  • 开始编译,然后编译安装(时间会比较长)
make && make install
  • 检查自己指定的安装路径,查看文件是否完整,尤其是bin目录下的可执行文件。
其它:
  • 方法一:对python3进行配置软链接,因为输入python默认启动的python2.7
ln -s /opt/python380/bin/python3   /usr/bin/python
ln -s /opt/python380/bin/python3   /usr/bin/pip3
  • 方法二:将python的整个bin文件加入到环境变量中
第一步:复制python3.0的bin目录的绝对路径,可以通过pwd查看(/opt/python380/bin)
第二步:编辑系统的启动文件 profile (vim /etc/pro)
第三步:添加bin的绝对路径添加入环境变量,如图二,保存退出
第四步:读取配置文件,生效配置
source /etc/profile

linux python安装源码包 linux安装python3.8_linux python安装源码包_04


linux python安装源码包 linux安装python3.8_编译安装_05

  • 最后再输入python3就会发现启动的是python3.8了

安装Django并运行一个Django项目

1.安装Django,这里安装的版本是2.1.4版本

pip3 install django==2.1.4 如果感觉安装慢,可以看我的上一篇博客,提高模块的安装速度

linux python安装源码包 linux安装python3.8_linux python安装源码包_06


2. 创建Django项目

django-admin startproject mysite

linux python安装源码包 linux安装python3.8_python_07


3. 运行这个Django项目

  • 首先需要进入项目settings文件中,更改允许访问的主机(AllOW_HOSTS),我这里更改为"*",表示所有主机都可以访问
ALLOWED_HOSTS = ["*"]
  • 运行django项目
python3 manage.py runserver ip地址:端口号
如:python3 manage.py runserver 0.0.0.0:8000

linux python安装源码包 linux安装python3.8_Python_08

  1. Django项目启动后会发现仍然无法正常访问Django的启动页,这里的问题主要是防火墙,分为以下两类情况:
  • 第一类:腾讯云服务器
  • 解决方案:需要设置安全组,放开相关应的端口号,如图所示
  • 第二类:虚拟机或者其它方式登录的
  • 解决方案:关闭系统的防火墙
iptables -F
全部配置成功后就会看到以下界面

linux python安装源码包 linux安装python3.8_编译安装_09