如何修复「内核已死亡将自动重启」及MKL动态库加载错误
问题描述
- 单独导入numpy、pandas、matplotlib、seaborn包时,Jupyter会弹出内核似乎已崩溃,将自动重启的提示,此前尝试的修复手段均无效
- 直接在Shell中导入上述任意包时,终端输出错误信息:
Intel MKL 致命错误:无法加载 libmkl_intel_thread.1.dylib - 当前运行环境版本:Python 3.8.8、matplotlib 3.3.4、pandas 1.2.4、numpy 1.20.1、seaborn 0.11.1
- 问题出现前的操作:近期将Anaconda Navigator更新至2.1.0版本,判断该更新操作是问题诱因
故障原因
该报错是Anaconda更新后,内置的Intel MKL数学核心库动态链接配置失效导致。numpy、pandas、matplotlib、seaborn这类科学计算包均依赖MKL库做底层计算加速,加载包时系统找不到libmkl_intel_thread.1.dylib库文件,会直接终止运行进程,对应表现就是Jupyter内核崩溃、Shell导入报错。
修复步骤
按顺序尝试以下方案,每完成一步就测试导入包是否正常,无需全部执行:
- 修复MKL库配置
打开终端,激活出问题的conda环境,依次执行以下命令:
执行完成后关闭终端,重新打开后启动Jupyter测试即可。conda install -c intel mkl conda install nomkl - 强制重装核心依赖包
如果上一步操作后问题仍存在,在激活的对应环境下执行强制重装命令,覆盖损坏的文件关联:conda install --force-reinstall numpy pandas matplotlib seaborn - 回退Anaconda Navigator版本
如果前两步都无效,执行命令将Navigator回退到更新前的稳定版本:conda install anaconda-navigator=2.0.4
注意:所有命令执行前必须先切换到出问题的对应conda虚拟环境,不要直接在base环境执行,避免破坏其他环境的配置。
内容的提问来源于stack exchange,提问作者Andrew
相关产品推荐
相关产品推荐

