django - 两个不同版本的python,yum安装的路径问题
PHP中文网
PHP中文网 2017-04-18 09:44:23
[Python讨论组]

小虾我使用的是阿里云centos 6.5的服务器,服务器里默认自带的python版本是2.6.6。现在我要用django,就把python升级到2.7.8,然后我写了一个简单的网页,在执行“python manage.py runserver 0.0.0.0:8000”的时候,爆出了一个错误,No module named _sqlite3

于是我就yum install python-sqlite,结果发现这样:

Setting up Install Process
Package python-2.6.6-66.el6_8.x86_64 already installed and latest version
Nothing to do

也就是说2.6.6的版本里已经有了sqlite,但是 2.7.8这里还是没有啊,想问一下各位大虾,如果我还想用yum install的话,应该如何制定把sqlite安装到2.7.8路径?

PHP中文网
PHP中文网

认证0级讲师

全部回复(2)
阿神

推荐使用pyenv,pyenv是Python多版本管理工具。尽量不动系统默认的python。


解决依赖

yum -y install git gcc make patch zlib-devel \
gdbm-devel openssl-devel sqlite-devel \
bzip2-devel readline-devel

安装pyenv

  • 新建普通用户

useradd user
  • 进入安装目目录安装

cd /home/user
curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/pyenv-installer | bash
  • 设置环境变量

vim ~/.bash_profile
export PATH="~/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
  • 使环境变量生效,推荐重开终端

source ~/.bash_profile

部署python多版本

  • 新建工作目录

mkdir /home/user/python35
  • 安装python35

cd /home/user/python35
pyenv install -v 3.5.2
pip install --upgrade pip
  • 安装django

pip install Django==1.10.2
迷茫

yum需要工作在 python2.6
系统要变成2.7, 执行以下命令

# 用2.7版本覆盖系统
# [path to python2.7] 你的2.7版本安装路径
ln -sf /[path to python2.7]/bin/python /usr/bin/python
ln -sf /[path to python2.7]/bin/python /usr/bin/python2



# 修复yum
vim /usr/bin/yum

# 修改第一行, 声明yum使用老版本python2.6
#!/usr/bin/python2.6

# 同理修复(若存在): /usr/bin/package-cleanup
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号