• python 3.7 方向键乱码


    原因是缺少安装包libreadline-dev

    第一步安装libreadline-dev包:sudo apt-get install libreadline-dev(centos安装:yum -y install readline-devel);

    第二步以源码编译的方式安装Python 3.7。

    https://blog.csdn.net/xietansheng/article/details/84791703

    1.下载 Python 3.7

    $ wget https://www.python.org/ftp/python/3.7.2/Python-3.7.2.tar.xz

    2. 安装 Python 3.7

    2.1 解压源码包

    tar -xvf Python-3.7.2.tar.xz

    2.2 安装所需要的 编译器 和 依赖

    # 更新安装源(Source)
    sudo apt-get update

    # 同时安装多个软件包(已安装的会自动忽略), -y 表示对所有询问都回答 Yes
    sudo apt-get install -y gcc make build-essential libssl-dev zlib1g-dev
    libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev
    libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev

    2.3 编译安装(安装到 /usr/bin/python3.7)

    # 创建安装目录 sudo mkdir /usr/bin/python3.7

    # 进入 解压后的源码文件夹 cd Python-3.7.2

    # 配置, 检查安装环境, 生成 Makefile 文件, 指定安装到 /usr/bin/python3.7  sudo ./configure --enable-optimizations --prefix=/usr/bin/python3.7

    # 编译和安装(需要一段时间, 耐心等待) sudo make && make install

    • ./configure 时如果报错没有生成 Makefile 文件,根据报错信息安装相应的编译器或依赖,再重新执行;
    • make && make install 时如果还需要其他依赖,根据报错信息逐一安装依赖后再重新执行。

    2.4 查看安装结果

    安装后的目录:

    /usr/python3
            ├── bin
            │   ├── python3
            │   ├── pip3
            │   └── ...
            ├── lib
            │   └── ...
            ├── include
            │   └── ...
            └── share
                └── ...


    # 进入 python3 的 bin 目录
    cd /usr/bin/python3.7/bin

    # 查看 python3 的版本
    ./python3.7 -V
    ./pip3 -V

    3. 添加 Python 环境变量

    为了方便并优先使用 Python 3.7 的命令,把/usr/python3/bin目录添加到 PATH。

        打开全局环境变量配置文件

    sudo vim /etc/profile


        添加下面代码到/etc/profile配置文件

    # 把 /usr/bin/python3.7/bin 放在前面, 优先使用里面的命令
    export PATH=/usr/bin/python3.7/bin:$PATH



        执行 source 命令,让刚配置的环境变量立即生效

    source /etc/profile

        在任意目录下查看版本

    python3 -V
    pip3 -V


  • 相关阅读:
    启动窗体的程序控制与动画效果
    在线程中使用定时器
    从oracle9i/92数据库中导出数据至 oracle 8.1.7 数据库中
    收集:PowerDesigner常见问题解决与设置集锦
    [转]C# 2.0新特性与C# 3.5新特性
    COM服务器的创建过程
    [原创] 为什么需要TLS(Thread Local Storage)?
    COM+服务器的.Net组件实现 客户端
    如何在客户端避免繁冗的服务器GUID定义及导入?
    进程、线程、套间和环境
  • 原文地址:https://www.cnblogs.com/idyllcheung/p/10470568.html
Copyright © 2020-2023  润新知