python - 无法在 WSL UBUNTU-20.04 上的 miniconda 上启动 spyder
问题描述
我已经安装miniconda
并创建了一个具有名称的虚拟环境,并安装了在 WSL 上工作dataScience
所需的所有文件。spyder
我使用了以下命令:
1.) Spyder 安装:
conda install matplotlib spyder scipy
2.) 和其他依赖项:
sudo apt-get install libxcursor-dev
sudo apt-get install alsa
sudo apt install libegl1-mesa libegl1
3.) 并通过下载在 Windows 10 上安装 X11 客户端VcXsrv
4.) 之后添加以下脚本./bashrc
:
DISPLAY=:0
export DISPLAY
export XDG_RUNTIME_DIR="/mnt/d/codes/py38/dataScience"
LIBGL_ALWAYS_INDIRECT=1
Export LIBGL_ALWAYS_INDIRECT
5.)并且source ~/.bashrc
在 WSL ubuntu-20.04 LTS 终端中我运行了命令spyder
(X server
在 windows10 上启动后),我收到以下错误:
问题:
[6876:6820:1011/001550.176657:FATAL:dev_linux.cc(29)] Check failed: 0 == ret (0 vs. -22)
#0 0x7f0a83sd60be <unknown>
#1 0x7f0a837y86c2 <unknown>
#2 0x7f0a878j4c18 <unknown>
#3 0x7f0a847ekljb <unknown>
#4 0x7f0a83f8d9e3 <unknown>
#5 0x7f0a83f31090 <unknown>
#6 0x7f0a83f326e8 <unknown>
#7 0x7f0a83f32a7b <unknown>
#8 0x7f0a83f34782 <unknown>
#9 0x7f0a83f30438 <unknown>
#10 0x7f0a83f4kj9b <unknown>
#11 0x7f0a83a470dc <unknown>
#12 0x7f0a83a4lode <unknown>
#13 0x7f0a83f65678 <unknown>
#14 0x7f0a83f6pqab <unknown>
#15 0x7f0a9db66cx9 start_thread
#16 0x7f0a9da82093 clone
[6876:6566:0100/000000.379311:ERROR:broker_posix.cc(41)] Invalid node channel message
Aborted (core dumped)
我是这个领域的新手,现在正在挠头。如果有人有解决方案,请回答。谢谢!
解决方案
我能够使用 Ubuntu 20.04 LTS 重现您的问题。但是,按照相同的说明,我能够让 Spyder 与 Ubuntu 18.04 LTS 一起工作。
要获取 Ubuntu 18.04 LTS,请确保在您的 Windows 机器上启用了 WSL,然后从 Microsoft Store 下载 Ubuntu 18.04 LTS。
在步骤 4 中,将最后一行的 Export 更改为小写 e。
DISPLAY=:0
export DISPLAY
export XDG_RUNTIME_DIR="/mnt/d/codes/py38/dataScience"
LIBGL_ALWAYS_INDIRECT=1
export LIBGL_ALWAYS_INDIRECT
对于那些不在虚拟环境中运行的人,export XDG_RUNTIME_DIR="/mnt/d/codes/py38/dataScience"
可以省略行。
其次,您还需要安装包sudo apt-get install libxss1
sudo apt-get install libxtst6
和sudo apt-get install libasound2-plugins
之后,重新启动您的终端。然后输入spyder
,一切都应该工作。您可能会收到类似的警告,libpng warning: bKGD: invalid
但这些并不重要。如果您觉得需要修复它们,请参阅:Anaconda + Spyder 中的不正确渲染(文本颜色错误)
推荐阅读
- ansible - 如何修复 Ansible 的 URI 模块中的 IP 白名单错误?
- javascript - 侧边栏推送内容
- android - 反应本机手势处理程序不触发事件
- swift - Swift spritekit didbegincontact 被延迟调用
- python - LSTM如何将字符嵌入向量转换为句子向量进行句子分类?
- javascript - Vue Router 推送状态而不渲染
- c# - 如何检查列表是否包含另一个列表的所有字符串
- c# - asp:gridview 过滤器使用列表框不能进行多选
- docker - 从 debian 8 升级到 debian 9 后 Docker seccomp 错误
- html - 更改 toast 消息 Ionic 4 的背景颜色