QStandardPaths:XDG_RUNTIME_DIR 未设置,默认为“/tmp/runtime-aadithyasb”

QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-aadithyasb'

我在 Windows 10 中使用 WSL。当我 运行 一个 python 文件时显示此警告:

QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-aadithyasb'

我可以理解 XDG_RUNTIME_DIR 环境变量未设置,它正在创建自己的路径 /tmp/runtime-aadithyasb

我在为 Windows 安装 Xserver 时收到此警告,当文件为 运行 时使用 VcXsrv 打开绘图。

我的问题是我应该在 windows 中添加这个 XDG_RUNTIME_DIR 环境变量,还是有什么方法可以在 WSL 下使用的 Ubuntu 变量下设置目录?

我找到了导致终端发出警告的原因。然而,我发布这个是为了有一天它对像我这样刚开始使用 WSL 的人有用。 link 帮助我解决了这个问题,并让我更好地了解 linux 在 WSL 下的工作方式:

https://dev.to/winebaths/getting-up-and-running-with-the-windows-subsystem-for-linux-8oc

为了解决这个问题,我刚刚将以下几行添加到我的 .bashrc 文件中:

export XDG_RUNTIME_DIR=/some/directory/you/specify 
export RUNLEVEL=3

在此之后 运行 命令

source .bashrc 

现在警告不会一直显示在您的终端中。

上周,我在安装Orange3的库时遇到了类似的错误 我的环境是:

  • Ubuntu 18.04
  • python3 (3.6)
  • orange3 (3.27.1)
  • pyQt5 (5.15)

问题是: 当我尝试在命令行中编译 orange3 时:

sudo python3 -m Orange.canvas

系统显示:

QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'/home/rene/.local/lib/python3.6/site-packages/orangewidget/widget.py:287: RuntimeWarning: subclassing of widget classes is deprecated and will be disabled in the future.Extract code from OWBaseVectorizer or explicitly open it.RuntimeWarning) Fault segment

这个系统错误的问题是:

Orange3 (3.27.1) 与 PyQt5 (5.15) 不兼容。 不过PyQtWebEngine会兼容PyQt5以上版本到5.12

我在网上搜索了不同版本的 rhis 库,我安装了一个介于 5.12 和 5.15 之间的版本

因此,我确实将 PyQt5 的库降级到 5.13.1:

pip3 install PyQt5 == 5.13.1 --use-feature = 2020-resolver

因此: Orange3再次编译

我今天也遇到了这个问题。我所做的是打开 PowerShell 并使用以下命令杀死 Ubuntu WSL:

wsl.exe --shutdown

之后,我打开了 VcXsrv,其快捷方式称为“XLaunch”,并确保勾选“禁用访问控制”。