【踩坑记录】已激活虚拟环境,但pip install还是安装到全局
前天使用实验室的机子时,突然发现在我的虚拟环境下运行pip install直接安装到了base环境中。因为除了我还有其他人在用,第一时间也没法确认是哪里出了问题。
文章共699字 · 阅读需要大约3分钟
一键AI生成摘要,助你高效阅读
问答
·
已激活虚拟环境,但pip install还是安装到全局
背景概况
前天使用实验室的机子时,突然发现在我的虚拟环境下运行pip install直接安装到了base环境中。因为除了我还有其他人在用,第一时间也没法确认是哪里出了问题。搜索引擎前两页的办法都试了全部无效,目前只能说是部分解决了问题又可以开始跑实验了,开个帖子说一下排错过程:
省流:解决方案
重新配环境,将python=3.8换成python=3.9,就不重复了。
排错经历
根据chatgpt分析还有我上网搜索其他blog的可能原因/解决方案,我尝试了以下手段排错:
- $PATH环境变量出错:是我最早怀疑的错误,因为可能有其他人改了环境变量,但检查了~/.bashrc文件并没有发现异常,而且conda activate之后执行echo $PATH也确实是本虚拟环境的路径排在第一位,所以并不是这个问题。
- pip定位错误,与全局pip混淆:执行which pip,发现的确是这个虚拟环境中的pip。随后,使用python -m pip install指定本python环境的pip,还是不行。又尝试了 /path_to_env/bin/pip install直接指定pip,还是不行。
- 虚拟环境没有正确激活:排除,因为执行conda activate之后命令行前面会有(env)。(P.S. 感觉是chatgpt给的废话建议)
- 权限问题,尝试sudo pip install:也是chatgpt的建议(感觉不行),尝试执行之后发现确实在下载而不是报库已存在(用的是base内已有的numpy,pip install numpy做测试),但是速度极慢甚至断网,一会儿之后回过味儿来用sudo的话都不知道是在哪个环境了,于是赶紧取消命令(sudo 一定要慎重)
- 其他问题:pip版本(已经最新);源:没有问题。;奇怪的其他问题:删除重装了好几次环境,都没有问题
- 后来,检查了base环境,python版本是3.8.8,我的环境python是3.8.18,去检查了本机其他人的环境,发现python3.7,3.10版本的环境没有问题,而另外有一个python3.8版本的环境也出问题了,于是瞎蒙了一下是不是和python版本有关,试着创了一个python3.9的环境,结果真通了。
所以有没有大佬遇到过类似的问题,到底是为什么出错呢
更多推荐
已为社区贡献1条内容
所有评论(0)