火花 --Python

成功不是凭梦想和希望,而是要努力和实践!

编译安装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

 

posted @ 2019-05-11 11:20  gg火花  阅读(10291)  评论(0编辑  收藏  举报