zoukankan      html  css  js  c++  java
  • 编译安装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

  • 相关阅读:
    jQuery wrap wrapAll wrapInner使用
    jQuery replaceWith replaceAll end的用法
    spring mvc在Controller中获取ApplicationContext
    jQuery的$(window).load与、(document).ready和window.onload的关系
    java上传图片剪切工具类
    二进制查找树转换为双向链表
    关于O(logN)的正确理解
    数据结构-概述(1)
    iOS_4_表情排列
    Unity 3D游戏开发引擎:最火的插件推荐
  • 原文地址:https://www.cnblogs.com/shangping/p/10756718.html
Copyright © 2011-2022 走看看