热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

centos6.8安装python3/pip3/sqlite3步骤详解

题记项目的需要需要在python3下部署环境,且不能破坏python2的正常业务运行。当安装sqlite3的时候,出现过各种异常。网上排查了很久。记录下来,避免下次犯同样的错误。1

题记

项目的需要需要在python3下部署环境,且不能破坏python2的正常业务运行。
当安装sqlite3的时候,出现过各种异常。网上排查了很久。
记录下来,避免下次犯同样的错误。

1、安装python3
安装版本:Python-3.5.0

步骤1: 准备编译环境

yum groupinstall 'Development Tools'
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel

步骤 2: 下载 Python3.5代码包

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

步骤3: 编译

tar Jxvf Python-3.5.0.tar.xz
cd Python-3.5.0
./configure --prefix=/usr/local/python3
make && make install

步骤4: 设置环境变量

echo 'export PATH=$PATH:/usr/local/python3/bin' >> ~/.bashrc

步骤5: 或者可以直接替换python2

rm /usr/bin/python
ln -sv /usr/local/bin/python3.5 /usr/bin/python

这样做的目的是在系统任意目录敲入python调用的是python3的命令,而非系统默认2.6.6的
但是这样同时这会导致依赖python2.6的yum不能使用,因此还要修改yum配置。

步骤6: 更新yum配置。

ll /usr/bin | grep python

这时/usr/bin目录下面是包含以下几个文件的(ll |grep python),其中有个python2.6,只需要指定yum配置的python指向这里即可

vim /usr/bin/yum

通过vim修改yum的配置

#!/usr/bin/python改为#!/usr/bin/python2.6,保存退出。

完成了python3的安装。

2、步骤2:安装pip3

对应版本:pip-9.0.1

步骤1:下载脚本。

wget https://bootstrap.pypa.io/get-pip.py

步骤2:执行安装

python get-pip.py

步骤3:建立软连接。

pip安装后执行pip依然无法找到命令,细看pip安装的提示信息发现安装到了python3下面,这里肯定不是系统的classpath目录。
如下:
Installing pip3 script to /var/python3/bin
Installing pip3.3 script to /var/python3/bin
Installing pip script to /var/python3/binSuccessfully installed pip
解决办法就是简单地建立连接到系统的classpath目录之一:

mv /usr/bin/pip /tmp
ln -sv /usr/local/python3/bin/pip /usr/bin/pip

3、安装sqlite3

步骤1:下载SQLTLE3:

https://www.sqlite.org/download.html

步骤2:安装SQLITE 3

解压后进入sqlite3的目录下,进行编译:

$configure –prefix=<你的安装路径> ###这里我设置的是 /usr/local/sqlite
$make –j24
$make install

步骤3:安装成功验证

安装成功之后会输出如下信息:

/usr/bin/mkdir -p '/usr/local/sqlite/bin'
/bin/sh ./libtool --mode=install /usr/bin/install -c sqlite3 '/usr/local/sqlite/bin'
libtool: install: /usr/bin/install -c sqlite3 /usr/local/sqlite/bin/sqlite3
/usr/bin/mkdir -p '/usr/local/sqlite/include'
/usr/bin/install -c -m 644 sqlite3.h sqlite3ext.h '/usr/local/sqlite/include'
/usr/bin/mkdir -p '/usr/local/sqlite/share/man/man1'
/usr/bin/install -c -m 644 sqlite3.1 '/usr/local/sqlite/share/man/man1'
/usr/bin/mkdir -p '/usr/local/sqlite/lib/pkgconfig'
/usr/bin/install -c -m 644 sqlite3.pc '/usr/local/sqlite/lib/pkgconfig'
make[1]: Leaving directory `/root/workspace/sqlite-autoconf-3170000'

4、安装 sqlite-devel
 yum install sqlite-devel

该步骤非常重要,否则会导致sqlite安装失败。

5、重新安装python3

步骤1:查找 sqlite_inc_paths,添加sqlite信息。
编辑python3.5.X里面的setup.py, 内容如下 (添加sqlite的搜索路径):
使用vim setup.py 打开,同时在命令模式下输入:
/sqlite_inc_paths #用于寻找该字段,如下所示:
第1081行,是我新添加的sqlite的安装路径。

 1075 sqlite_inc_paths = [ '/usr/include',
1076 '/usr/include/sqlite',
1077 '/usr/include/sqlite3',
1078 '/usr/local/include',
1079 '/usr/local/include/sqlite',
1080 '/usr/local/include/sqlite3',
1081 '/usr/local/sqlite'
1082 ]
1083 if cross_compiling:
1084 sqlite_inc_paths = []

步骤2:重新安装Python

参考 安装python3的:步骤2、步骤3。

6 、验证sqlite3安装成功。

python命令行下输入:import sqlite3。
没有任何错误输出,代表安装成功。

常见错误:

1)ImportError: dynamic module does not define module export function (PyInit__sqlite3)

2)No module named _sqlite3
通过步骤1-6,以上错误都能解决。

2017年7月13日 22:48 于家中床前

作者:铭毅天下
转载请标明出处,原文地址:
http://blog.csdn.net/laoyang360/article/details/75094004
如果感觉本文对您有帮助,请点击‘顶’支持一下,您的支持是我坚持写作最大的动力,谢谢!


推荐阅读
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • baresip android编译、运行教程1语音通话
    本文介绍了如何在安卓平台上编译和运行baresip android,包括下载相关的sdk和ndk,修改ndk路径和输出目录,以及创建一个c++的安卓工程并将目录考到cpp下。详细步骤可参考给出的链接和文档。 ... [详细]
  • javascript  – 概述在Firefox上无法正常工作
    我试图提出一些自定义大纲,以达到一些Web可访问性建议.但我不能用Firefox制作.这就是它在Chrome上的外观:而那个图标实际上是一个锚点.在Firefox上,它只概述了整个 ... [详细]
  • 本文介绍了计算机网络的定义和通信流程,包括客户端编译文件、二进制转换、三层路由设备等。同时,还介绍了计算机网络中常用的关键词,如MAC地址和IP地址。 ... [详细]
  • vue使用
    关键词: ... [详细]
  • 安装mysqlclient失败解决办法
    本文介绍了在MAC系统中,使用django使用mysql数据库报错的解决办法。通过源码安装mysqlclient或将mysql_config添加到系统环境变量中,可以解决安装mysqlclient失败的问题。同时,还介绍了查看mysql安装路径和使配置文件生效的方法。 ... [详细]
  • VScode格式化文档换行或不换行的设置方法
    本文介绍了在VScode中设置格式化文档换行或不换行的方法,包括使用插件和修改settings.json文件的内容。详细步骤为:找到settings.json文件,将其中的代码替换为指定的代码。 ... [详细]
  • Python实现变声器功能(萝莉音御姐音)的方法及步骤
    本文介绍了使用Python实现变声器功能(萝莉音御姐音)的方法及步骤。首先登录百度AL开发平台,选择语音合成,创建应用并填写应用信息,获取Appid、API Key和Secret Key。然后安装pythonsdk,可以通过pip install baidu-aip或python setup.py install进行安装。最后,书写代码实现变声器功能,使用AipSpeech库进行语音合成,可以设置音量等参数。 ... [详细]
  • Linux重启网络命令实例及关机和重启示例教程
    本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • 本文讨论了在Windows 8上安装gvim中插件时出现的错误加载问题。作者将EasyMotion插件放在了正确的位置,但加载时却出现了错误。作者提供了下载链接和之前放置插件的位置,并列出了出现的错误信息。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • 本文介绍了如何使用python从列表中删除所有的零,并将结果以列表形式输出,同时提供了示例格式。 ... [详细]
  • C++字符字符串处理及字符集编码方案
    本文介绍了C++中字符字符串处理的问题,并详细解释了字符集编码方案,包括UNICODE、Windows apps采用的UTF-16编码、ASCII、SBCS和DBCS编码方案。同时说明了ANSI C标准和Windows中的字符/字符串数据类型实现。文章还提到了在编译时需要定义UNICODE宏以支持unicode编码,否则将使用windows code page编译。最后,给出了相关的头文件和数据类型定义。 ... [详细]
  • Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOMEbinjava–option来启 ... [详细]
author-avatar
小菜鸟
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有