解决virtualenv -p python3 venv报错的问题


Posted in Python onFebruary 05, 2021

在阿里云服务器上,用virtualenv创建虚拟环境时,报了个错误

root@iZwz982qla1uxm1s5dnyo7Z:/usr/lib/python3/dist-packages/virtualenv-15.0.1.egg-info# virtualenv -p python3 venv
Running virtualenv with interpreter /usr/bin/python2
New python executable in /usr/lib/python3/dist-packages/virtualenv-15.0.1.egg-info/venv/bin/python2
Not overwriting existing python script /usr/lib/python3/dist-packages/virtualenv-15.0.1.egg-info/venv/bin/python (you must use /usr/lib/python3/dist-packages/virtualenv-15.0.1.egg-info/venv/bin/python2)
Please make sure you remove any previous custom paths from your /root/.pydistutils.cfg file.
 1 [global]
Installing setuptools, pkg_resources, pip, wheel...
 Complete output from command /usr/lib/python3/dis...nfo/venv/bin/python2 - setuptools pkg_resources pip wheel:
 Collecting setuptools
 Downloading http://mirrors.aliyun.com/pypi/packages/ff/f4/385715ccc461885f3cedf57a41ae3c12b5fec3f35cce4c8706b1a112a133/setuptools-40.0.0-py2.py3-none-any.whl (567kB)
Collecting pkg_resources
Exception:
Traceback (most recent call last):
 File "/usr/share/python-wheels/pip-8.1.1-py2.py3-none-any.whl/pip/basecommand.py", line 209, in main
 status = self.run(options, args)
 File "/usr/share/python-wheels/pip-8.1.1-py2.py3-none-any.whl/pip/commands/install.py", line 328, in run
 wb.build(autobuilding=True)
 File "/usr/share/python-wheels/pip-8.1.1-py2.py3-none-any.whl/pip/wheel.py", line 748, in build
 self.requirement_set.prepare_files(self.finder)
 File "/usr/share/python-wheels/pip-8.1.1-py2.py3-none-any.whl/pip/req/req_set.py", line 360, in prepare_files
 ignore_dependencies=self.ignore_dependencies))
 File "/usr/share/python-wheels/pip-8.1.1-py2.py3-none-any.whl/pip/req/req_set.py", line 512, in _prepare_file
 finder, self.upgrade, require_hashes)
 File "/usr/share/python-wheels/pip-8.1.1-py2.py3-none-any.whl/pip/req/req_install.py", line 273, in populate_link
 self.link = finder.find_requirement(self, upgrade)
 File "/usr/share/python-wheels/pip-8.1.1-py2.py3-none-any.whl/pip/index.py", line 442, in find_requirement
 all_candidates = self.find_all_candidates(req.name)
 File "/usr/share/python-wheels/pip-8.1.1-py2.py3-none-any.whl/pip/index.py", line 400, in find_all_candidates
 for page in self._get_pages(url_locations, project_name):
 File "/usr/share/python-wheels/pip-8.1.1-py2.py3-none-any.whl/pip/index.py", line 545, in _get_pages
 page = self._get_page(location)
 File "/usr/share/python-wheels/pip-8.1.1-py2.py3-none-any.whl/pip/index.py", line 648, in _get_page
 return HTMLPage.get_page(link, session=self.session)
 File "/usr/share/python-wheels/pip-8.1.1-py2.py3-none-any.whl/pip/index.py", line 760, in get_page
 resp.raise_for_status()
 File "/usr/lib/python3/dist-packages/virtualenv-15.0.1.egg-info/venv/share/python-wheels/requests-2.9.1-py2.py3-none-any.whl/requests/models.py", line 840, in raise_for_status
 raise HTTPError(http_error_msg, response=self)
HTTPError: 404 Client Error: Not Found for url: http://mirrors.aliyun.com/pypi/simple/pkg-resources/
----------------------------------------
...Installing setuptools, pkg_resources, pip, wheel...done.
Traceback (most recent call last):
 File "/usr/lib/python3/dist-packages/virtualenv.py", line 2363, in <module>
 main()
 File "/usr/lib/python3/dist-packages/virtualenv.py", line 719, in main
 symlink=options.symlink)
 File "/usr/lib/python3/dist-packages/virtualenv.py", line 988, in create_environment
 download=download,
 File "/usr/lib/python3/dist-packages/virtualenv.py", line 918, in install_wheel
 call_subprocess(cmd, show_stdout=False, extra_env=env, stdin=SCRIPT)
 File "/usr/lib/python3/dist-packages/virtualenv.py", line 812, in call_subprocess
 % (cmd_desc, proc.returncode))
OSError: Command /usr/lib/python3/dis...nfo/venv/bin/python2 - setuptools pkg_resources pip wheel failed with error code 2

看到HTTPError: 404 Client Error: Not Found for url: http://mirrors.aliyun.com/pypi/simple/pkg-resources/以为是阿里云的安全组配置没配好,折腾了半天,原来是访问PyPI镜像源出了问题,将pip的默认的源地址改为国内源即可。

具体操作如下:

vim ~/.pip/pip.conf打开pip配置文件:

写入

[global]
index-url = http://e.pypi.python.org/simple

以下这几个国内源都可以

e.pypi.python.org

pypi.douban.com

pypi.hustunique.com

补充:使用virtualenv创建Python3.7虚拟环境时报错ModuleNotFoundError: No module named '_ctypes'的解决方法

使用virtualenv创建Python3.7.6版本虚拟环境时,遇到了标题中的报错,记录一下解决过程。

出现这种情况一般是因为缺少依赖包libffi-devel

在安装3.7以上版本时,需要一个新的libffi-devel包做依赖

使用yum安装依赖

yum install libffi-devel -y

删除之前安装的报错的虚拟环境目录

rm -f venv

重新编译安装系统Python3.7.6(需要先找到安装时的Python源码包,cd到目录中)

./configure --prefix=/usr/local/python3
make && make install

删除之前建立的软连接

rm -rf /usr/bin/python3
rm -rf /usr/bin/pip3

重新建立软连接

ln -s /usr/local/python3/bin/python3.7 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3.7 /usr/bin/pip3

到此Python3重新安装完成,可以用python3、pip3命令测试一下是否安装成功。

进入虚拟目录将要存放的目录,使用新安装的Python3创建虚拟环境。此处需要使用-p参数指定Python版本路径,否则默认创建Python2的环境。

virtualenv -p /usr/bin/python3 venv

测试进入创建好的虚拟环境中

source venv/bin/activate

退出环境

deactivate

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。如有错误或未考虑完全的地方,望不吝赐教。

Python 相关文章推荐
python pandas dataframe 行列选择,切片操作方法
Apr 10 Python
对Python 窗体(tkinter)文本编辑器(Text)详解
Oct 11 Python
opencv实现静态手势识别 opencv实现剪刀石头布游戏
Jan 22 Python
简单了解python反射机制的一些知识
Jul 13 Python
Python Request爬取seo.chinaz.com百度权重网站的查询结果过程解析
Aug 13 Python
使用python去除图片白色像素的实例
Dec 12 Python
django admin后管定制-显示字段的实例
Mar 11 Python
使用keras实现Precise, Recall, F1-socre方式
Jun 15 Python
如何解决pycharm调试报错的问题
Aug 06 Python
详解Python中的路径问题
Sep 02 Python
python 发送邮件的四种方法汇总
Dec 02 Python
python的netCDF4批量处理NC格式文件的操作方法
Mar 21 Python
python如何修改文件时间属性
Feb 05 #Python
虚拟环境及venv和virtualenv的区别说明
Feb 05 #Python
Pycharm 如何一键加引号的方法步骤
Feb 05 #Python
Python tkinter之Bind(绑定事件)的使用示例
Feb 05 #Python
pycharm配置python 设置pip安装源为豆瓣源
Feb 05 #Python
在PyCharm中安装PaddlePaddle的方法
Feb 05 #Python
python实现录制全屏和选择区域录屏功能
Feb 05 #Python
You might like
PHP文件锁定写入实例解析
2014/07/14 PHP
PHP面向对象程序设计之对象克隆clone和魔术方法__clone()用法分析
2019/06/12 PHP
Laravel 自带的Auth验证登录方法
2019/09/30 PHP
JavaScript Cookie显示用户上次访问的时间和次数
2009/12/08 Javascript
图像替换新技术 状态域方法
2010/01/28 Javascript
IE8 chrome中table隔行换色解决办法
2010/07/09 Javascript
JS中Iframe之间传值的方法
2013/03/11 Javascript
jquery实现输入框动态增减的实例代码
2013/07/14 Javascript
使用javascript实现页面定时跳转总结篇
2013/09/21 Javascript
实例讲解JQuery中this和$(this)区别
2014/12/08 Javascript
JS实现动态移动层及拖动浮层关闭的方法
2015/04/30 Javascript
AngularJS入门之动画
2016/07/27 Javascript
vue脚手架vue-cli的学习使用教程
2017/06/06 Javascript
layui获取多选框中的值方法
2018/08/15 Javascript
详解Node.js中path模块的resolve()和join()方法的区别
2018/10/29 Javascript
JS实现灯泡开关特效
2020/03/30 Javascript
jQuery实现的图片点击放大缩小功能案例
2020/01/02 jQuery
浅谈vue.watch的触发条件是什么
2020/11/07 Javascript
[45:10]NB vs Liquid Supermajor小组赛 A组胜者组决赛 BO3 第二场 6.2
2018/06/04 DOTA
Python多线程编程(一):threading模块综述
2015/04/05 Python
python MysqlDb模块安装及其使用详解
2018/02/23 Python
基于数据归一化以及Python实现方式
2018/07/11 Python
Python二叉树的镜像转换实现方法示例
2019/03/06 Python
python 字符串常用函数详解
2019/09/11 Python
Python中的Cookie模块如何使用
2020/06/04 Python
原生canvas制作画图小工具的踩坑和爬坑
2020/06/09 HTML / CSS
美国卡车、吉普车和SUV零件网站:4 Wheel Parts
2016/11/24 全球购物
ECCO俄罗斯官网:北欧丹麦鞋履及皮具品牌
2020/06/26 全球购物
美德少年事迹材料
2014/01/23 职场文书
基层党建工作宣传标语
2014/06/24 职场文书
光棍节联谊晚会活动策划书
2014/10/10 职场文书
公务员政审材料
2014/12/23 职场文书
办公室规章制度范本
2015/08/04 职场文书
python 使用Tensorflow训练BP神经网络实现鸢尾花分类
2021/05/12 Python
处理canvas绘制图片模糊问题
2022/05/11 Javascript
CSS 实现磨砂玻璃(毛玻璃)效果样式
2023/05/21 HTML / CSS