我在 64 位 Windows 10 Pro 版本 20H2 中使用 WSL1(Ubuntu 18.04 LTS),并使用 Xming 导出我在日常任务中使用的图形应用程序。我有一个NVIDIA MX150显卡(默认戴尔笔记本 GPU)和 NVidia驱动程序版本为 451.67。目前,我一直在努力绘制 Python 环境中的时间相关数值模拟结果。我仍然不知道为什么有时绘图工作正常,而有时却根本不起作用。我正在使用费尼西斯框架 (https://fenicsproject.org/)来生成我的结果和韦多包裹 (https://pypi.org/project/vedo/)对结果进行后处理。我意识到 vedo 使用台面代替英伟达图形驱动程序。
$ uname --all
Linux NoteDell 4.4.0-19041-Microsoft #488-Microsoft Mon Sep 01 13:43:00 PST 2020 x86_64 x86_64 x86_64 GNU/Linux
为了建立图形连接,我在.bashrc文件
export DISPLAY=:0
export XDG_RUNTIME_DIR=/tmp/runtime-heitorvc
export RUNLEVEL=3
当我运行我的 python 脚本时出现以下错误:
ERROR: In /work/standalone-x64-build/VTK-source/Rendering/OpenGL2/vtkOpenGLRenderWindow.cxx, line 797
vtkXOpenGLRenderWindow (0x28ba190): GL version 2.1 with the gpu_shader4 extension is not supported by your graphics driver but is required for the new OpenGL rendering backend. Please update your OpenGL driver. If you are using Mesa please make sure you have version 10.6.5 or later and make sure your driver in Mesa supports OpenGL 3.2.
Segmentation fault (core dumped)
我看到了另一个和我情况类似的用户的帖子: https://discourse.slicer.org/t/conflict-vmtk-with-opengl-mesa-in-nvidia-graphics-card/8765
我尝试按照他的步骤操作,但仍然遇到上述错误。我认为这是由于 NVidia 图形驱动程序和 MESA 之间存在冲突(如此处所述:如何:在 Ubuntu 19.04 上使用 Mesa)。
我不知道还能做什么。我以为可以通过禁用 Nvidia 图形驱动程序来解决问题,但错误仍然存在。我坚持在后处理任务中使用 Vedo,因为缺乏有效检查时间相关结果的工具(当您需要不断测试应用程序中的多项更改时,使用 paraview 不是一个选择)。此外,我相信我的挣扎也受到我对在 WSL 中更改内容缺乏信心的影响,过去我这样做时遇到了一些麻烦。
有人能分享一些关于如何在 WSL 范围内解决 MESA 和 Nvidia 之间的冲突的想法吗?我该如何解决这个问题?如果这不是发布此问题的最佳地点,我深表歉意。