Ubuntu 22.04下Jupyter Notebook无法找到xeus-cling C++内核求助
解决Ubuntu 22.04上Jupyter Notebook无法识别xeus-cling C++内核的问题
核心问题分析
你遇到的问题主要是系统级Jupyter与conda环境内Jupyter的冲突,以及未确保xeus-cling环境内安装独立的Jupyter Notebook导致的。以下是分步解决方案:
1. 卸载系统级Jupyter避免冲突
之前用sudo apt安装的系统级Jupyter会优先于conda环境内的版本执行,导致无法加载xeus-cling内核。执行以下命令彻底卸载:
sudo apt purge --autoremove jupyter jupyter-notebook
2. 重建xeus-cling conda环境
删除原有问题环境,重新构建并确保环境内包含Jupyter Notebook:
- 删除旧环境:
conda env remove -n xeus-cling - 创建并激活新环境:
conda create -n xeus-cling conda activate xeus-cling - 同时安装xeus-cling和Jupyter Notebook:
conda install -c conda-forge xeus-cling jupyter-notebook
3. 验证内核安装状态
激活xeus-cling环境后,执行以下命令查看已安装的内核:
jupyter kernelspec list
如果输出中出现cpp17、cpp14或cpp11的条目,说明内核已正确安装。
4. 启动Jupyter Notebook
确保在xeus-cling环境内启动Jupyter:
jupyter-notebook
此时在新建Notebook的下拉菜单中,应该能看到C++相关的内核选项。
5. 额外排查(如果内核仍不显示)
如果上述步骤后仍无法识别内核,手动添加内核配置:
- 先找到xeus-cling的内核配置路径,执行:
找到环境路径(通常是conda list xeus-cling~/miniconda3/envs/xeus-cling或~/anaconda3/envs/xeus-cling) - 进入该路径下的
share/jupyter/kernels/目录,会看到cpp相关的内核文件夹,执行以下命令添加到用户级内核:
(将路径替换为你实际的内核文件夹路径)jupyter kernelspec install --user ~/miniconda3/envs/xeus-cling/share/jupyter/kernels/cpp17
内容的提问来源于stack exchange,提问作者user37292
相关产品推荐
相关产品推荐

