编译安装python3
在我们开始装机的时候
很多同学选的是 minmal install最小化安装(就会缺少很多软件包,依赖包)
那么假设你在编译安装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 #读取一下配置文件,生效配置
完成后九可以pip3 install django==2.0
(注意pip3就是给python3用的 django 自动下载到opt/python373/lib/python3.7 中)
pip3 list 可以查看下有什么模块 有django了 (which pip3 ,which python3)
find / -name django 看django路径
创建django项目:django-admin startproject mysite
启动django项目:python3 manage.py runserver 0.0.0.0:9000
(0.0.0.0 同时绑定10.0.0.0(ping通此地址的可以访问) 127.0.0.1 (本地访问))
此时访问报错,ALLOW_HOSTS ---> cd mysite ---> vim settings -- > ALLOW_HOSTS=["*"]
允许所有人可以访问
settings.py 文件在项目的第二层同名目录下
#可能出现的问题
网页访问不到
解决办法:
关闭防火墙
iptables -F 清空防火强规则
setenforce 0
systemctl stop firewalld 永久关闭防火墙
不要用win8 win10自带的浏览器
用chrome
#提示命令pip找不到
pip install --upgrade pip
但是你系统现在是pip3
执行这条:
pip3 install --upgrade pip