技术背景

在上一篇博客中执行过conda的更新以及用conda安装了gxx_linux-64之后,再执行pip的一些指令时,就会给出如下所示的报错:

$ python3 -m pip list
Traceback (most recent call last):
File "/home/dechin/anaconda3/lib/python3.8/runpy.py", line 194, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/home/dechin/anaconda3/lib/python3.8/runpy.py", line 87, in _run_code
exec(code, run_globals)
File "/home/dechin/anaconda3/lib/python3.8/site-packages/pip/__main__.py", line 29, in <module>
from pip._internal.cli.main import main as _main
File "/home/dechin/anaconda3/lib/python3.8/site-packages/pip/_internal/cli/main.py", line 9, in <module>
from pip._internal.cli.autocompletion import autocomplete
File "/home/dechin/anaconda3/lib/python3.8/site-packages/pip/_internal/cli/autocompletion.py", line 10, in <module>
from pip._internal.cli.main_parser import create_main_parser
File "/home/dechin/anaconda3/lib/python3.8/site-packages/pip/_internal/cli/main_parser.py", line 8, in <module>
from pip._internal.cli import cmdoptions
File "/home/dechin/anaconda3/lib/python3.8/site-packages/pip/_internal/cli/cmdoptions.py", line 23, in <module>
from pip._internal.cli.parser import ConfigOptionParser
File "/home/dechin/anaconda3/lib/python3.8/site-packages/pip/_internal/cli/parser.py", line 12, in <module>
from pip._internal.configuration import Configuration, ConfigurationError
File "/home/dechin/anaconda3/lib/python3.8/site-packages/pip/_internal/configuration.py", line 27, in <module>
from pip._internal.utils.misc import ensure_dir, enum
File "/home/dechin/anaconda3/lib/python3.8/site-packages/pip/_internal/utils/misc.py", line 42, in <module>
from pip._internal.locations import get_major_minor_version, site_packages, user_site
File "/home/dechin/anaconda3/lib/python3.8/site-packages/pip/_internal/locations/__init__.py", line 9, in <module>
from . import _distutils, _sysconfig
File "/home/dechin/anaconda3/lib/python3.8/site-packages/pip/_internal/locations/_distutils.py", line 18, in <module>
from .base import get_major_minor_version
File "/home/dechin/anaconda3/lib/python3.8/site-packages/pip/_internal/locations/base.py", line 14, in <module>
site_packages = sysconfig.get_path("purelib") # type: typing.Optional[str]
File "/home/dechin/anaconda3/lib/python3.8/sysconfig.py", line 521, in get_path
return get_paths(scheme, vars, expand)[name]
File "/home/dechin/anaconda3/lib/python3.8/sysconfig.py", line 511, in get_paths
return _expand_vars(scheme, vars)
File "/home/dechin/anaconda3/lib/python3.8/sysconfig.py", line 172, in _expand_vars
_extend_dict(vars, get_config_vars())
File "/home/dechin/anaconda3/lib/python3.8/sysconfig.py", line 559, in get_config_vars
_init_posix(_CONFIG_VARS)
File "/home/dechin/anaconda3/lib/python3.8/sysconfig.py", line 430, in _init_posix
_temp = __import__(name, globals(), locals(), ['build_time_vars'], 0)
ModuleNotFoundError: No module named '_sysconfigdata_x86_64_conda_linux_gnu'

问题定位与解决

经过一圈的检索,最后对问题的出现原因定位为:在某一个版本的python中丢失了一个备份文件,通常在同一个版本的python下会有两个相同的_sysconfigdata_x86_64_conda_cos6_linux_gnu.py文件和_sysconfigdata_x86_64_conda_linux_gnu.py文件。而在某些程序的运行过程中会依赖于其中的一个,因此我们需要做的就是检索系统中是否存在有这两个文件:

$ sudo find ~ -name _sysconfigdata_x86_64*
[sudo] dechin 的密码:
/home/dechin/anaconda3/lib/python3.8/_sysconfigdata_x86_64_apple_darwin13_4_0.py
/home/dechin/anaconda3/lib/python3.8/__pycache__/_sysconfigdata_x86_64_apple_darwin13_4_0.cpython-38.pyc
/home/dechin/anaconda3/lib/python3.8/_sysconfigdata_x86_64_conda_cos6_linux_gnu.py

这里我们发现当前使用的python3.8路径下只有一个_sysconfigdata_x86_64_conda_cos6_linux_gnu.py文件而没有_sysconfigdata_x86_64_conda_linux_gnu.py文件,因此我们只需要讲该文件拷贝一份即可:

$ cp /home/dechin/anaconda3/lib/python3.8/_sysconfigdata_x86_64_conda_cos6_linux_gnu.py /home/dechin/anaconda3/lib/python3.8/_sysconfigdata_x86_64_conda_linux_gnu.py

此时再重新执行pip的指令:

$ python3 -m pip listPackage                            Version
---------------------------------- -----------------
absl-py 0.13.0
adamod 0.0.3
affinity 0.1.0
alabaster 0.7.12
anaconda-client 1.8.0
anaconda-navigator 1.10.0
anaconda-project 0.10.1
anyio 2.2.0
...

成功运行,问题解决。

总结概要

在近期conda的版本更新中,有可能会删除路径下的_sysconfigdata_x86_64_conda_linux_gnu模块相关备份文件,而在其他的一些软件的运行过程中有可能依赖于这个备份文件,这就会导致运行过程报错模块无法找到的问题。最终我们通过重新复制备份这个文件解决了该问题。

版权声明

本文首发链接为:https://www.cnblogs.com/dechinphy/p/sysconfigdata-error.html

作者ID:DechinPhy

更多原著文章请参考:https://www.cnblogs.com/dechinphy/

打赏专用链接:https://www.cnblogs.com/dechinphy/gallery/image/379634.html

腾讯云专栏同步:https://cloud.tencent.com/developer/column/91958

参考链接

  1. https://shixiangwang.github.io/blog/conda-error-sysconfigdata-not-found/

解决python报错:ModuleNotFoundError: No module named '_sysconfigdata_x86_64_conda_linux_gnu'的更多相关文章

  1. Python报错ModuleNotFoundError: No module named 'numpy'

    转载:https://blog.csdn.net/qq_39779233/article/details/103224712 Python报错ModuleNotFoundError: No modul ...

  2. centos7中python3.6报错ModuleNotFoundError: No module named '_ssl' 或者 Max retries exceeded with url: / (Caused by SSLError("Can't connect to HTTPS URL because the SSL module is not available.",))

    如果在运行爬虫时报此错:requests.exceptions.SSLError: HTTPSConnectionPool(host='www.baidu.com', port=443): Max r ...

  3. pyinstaller打包多个py文件仍报错ModuleNotFoundError: No module named 'xxx'

    [问题现象] 使用pyinstaller A.py -p b.py -p c.py打包多个文件 或者使用main.spec在Analysis配置好各个文件打包 打包成功后,运行main.exe仍然报错 ...

  4. Django 修改该项目文件夹、项目名及项目文件夹中同名文件夹,报错 ModuleNotFoundError: No module named 'untitled'

    如果你直接重构项目文件夹名及重构项目名和重构项目文件夹内同名文件夹 执行项目报错 ModuleNotFoundError: No module named 'untitled' 请执行以下操作

  5. 运行Scrapy工程,报错ModuleNotFoundError: No module named 'win32api'解决方法

    1.运行爬虫scrapy crawl name,报错ScrpyModuleNotFoundError: No module named 'win32api' 2.解决方法: 在https://gith ...

  6. python创建__init.py__文件导入模块仍然报错ModuleNotFoundError: No module named 'name'

    今自定义模块后非相同目录导出提示找不到模块报错信息如下: ModuleNotFoundError: No module named 'name' 各方查找各位大神方法很多 参考链接 1.在需要导入的文 ...

  7. 【python+beautifulsoup4】Python中安装bs4后,pycharm报错ModuleNotFoundError: No module named 'bs4'

    本文主要分享关于在对应python版本中安装beautifulsoup之后,在代码执行时还会提示“No module named 'bs4'”的问题. 安装beautifsoup4 在命令窗口执行 p ...

  8. redhat 6安装python 3.7.4报错ModuleNotFoundError: No module named '_ctypes' make: *** [install] Error 1

    问题描述: 今天在测试环境中,为了执行脚本,安装下python3命令,在执行make install的时候报错: ModuleNotFoundError: No module named '_ctyp ...

  9. Python中安装bs4后,pycharm依然报错ModuleNotFoundError: No module named 'bs4'

    学习网络抓取时,第一步出现问题. 执行示例代码 from urllib.request import urlopen from bs4 import BeautifulSoup html = urlo ...

  10. pycharm 报错 ModuleNotFoundError: No module named 'distutils.core'

    之气的虚拟机不好使了,重新装了最新版本,安装了ubuntu18.4,然后安装pycharm,但新建项目的时候报错: ModuleNotFoundError: No module named 'dist ...

随机推荐

  1. Docker的安装、镜像加速配置

    wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce. ...

  2. 华企盾DSC防泄密:有一个文件申请解密失败,提示拒绝访问(密钥不对)

    解决方法:将文件拖到加密进程中提示密钥不对,找到原来的数据库还原解密

  3. KubeCon China 2023 | 拥抱开源,华为云原生华彩绽放

    本文分享自华为云社区<KubeCon China 2023 | 拥抱开源,华为云原生华彩绽放>,作者: 云容器大未来 . 2023 年度云原生全球旗舰盛会 KubeCon + CloudN ...

  4. 为什么vacuum后表还是继续膨胀?

    摘要: 对于更新和删除操作频繁的表,会存在大量垃圾数据,导致磁盘空间的浪费和查询扫描时额外的IO开销,需要定期执行清理操作(vacuum)来控制行存表以及表上索引的膨胀.本文将对vacuum的原理以及 ...

  5. 顶会VLDB'22论文解读:多元时序预测算法METRO

    摘要:本文提出了一个端到端的MTS预测框架METRO.METRO的核心思想是利用多尺度动态图建模变量之间的依赖关系,考虑单尺度内信息传递和尺度间信息融合. 本文分享自华为云社区<VLDB'22 ...

  6. 综合指南|如何为平台工程选择关键 KPI

    平台工程是一种新兴的技术方法,可以加速应用程序的交付和产生商业价值的速度.通过提供具有自动化基础设施操作的自助服务能力,改善开发者的体验与生产力,同时降低操作的复杂性.在企业采用了平台工程之后,需要对 ...

  7. 火山引擎ByteHouse:一套方案,让OLAP引擎在精准投放场景更高效

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群   由于流量红利逐渐消退,越来越多的广告企业和从业者开始探索精细化营销的新路径,取代以往的全流量.粗放式的广告轰炸 ...

  8. Solon:Hello world!

    Solon:Hello world! (一)新建一个 maven 空项目 (二)添加 maven 引用 <dependency> <groupId>org.noear</ ...

  9. 用 Java?试试国产轻量的 Solon v1.10.1

    相对于 Spring Boot 和 Spring Cloud 的项目: 启动快 5 - 10 倍. (更快) qps 高 2- 3 倍. (更高) 运行时内存节省 1/3 ~ 1/2. (更少) 打包 ...

  10. 干掉 LaTeX !用BookDown写本书

    Bookdown是著名R包作者谢益辉开发的,支持采用Rmarkdown (R代码可以运行)或普通markdown编写文档,然后编译成HTML, WORD, PDF, Epub等格式. bookdown ...