无法在 Fedora 32 linux Intel 64 平台上运行 Eagle PCB 软件(与“xcb”和“QT”相关的问题

无法在 Fedora 32 linux Intel 64 平台上运行 Eagle PCB 软件(与“xcb”和“QT”相关的问题

我在尝试在运行 Fedora 32 的戴尔笔记本电脑上安装 Eagle PCB 布局软件时,无法理解控制台调试数据。我在下面包含了控制台调试输出,希望有人可以帮助我更好地理解和修复错误。

[jcl@localhost eagle-9.6.2]$ setenv QT_DEBUG_PLUGINS 1 
[jcl@localhost eagle-9.6.2]$ 
[jcl@localhost eagle-9.6.2]$ ./eagle QFactoryLoader::QFactoryLoader() checking directory path "/home/jcl/EE/Autodesk_EAGLE_9.6.2_English_Linux_64bit/eagle-9.6.2/plugins/platforms" ... QFactoryLoader::QFactoryLoader() looking at "/home/jcl/EE/Autodesk_EAGLE_9.6.2_English_Linux_64bit/eagle-9.6.2/plugins/platforms/libqxcb.so" Found metadata in lib /home/jcl/EE/Autodesk_EAGLE_9.6.2_English_Linux_64bit/eagle-9.6.2/plugins/platforms/libqxcb.so, metadata= { "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3", "MetaData": { "Keys": [ "xcb" ] }, "className": "QXcbIntegrationPlugin", "debug": false, "version": 329988 }

Got keys from plugin meta data ("xcb") QFactoryLoader::QFactoryLoader() checking directory path "/home/jcl/EE/Autodesk_EAGLE_9.6.2_English_Linux_64bit/eagle-9.6.2/platforms" ... qt.qpa.plugin: Could not find the Qt platform plugin "wayland" in "" This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Available platform plugins are: xcb.

Abort (core dumped) 
[jcl@localhost eagle-9.6.2]$ echo $QT_QPA_PLATFORM wayland 
[jcl@localhost eagle-9.6.2]$

以下是显示 eagle 目录内容的一些信息:

[jcl@localhost eagle-9.6.2]$ ls
bin  cache  doc  eagle  examples  lib  libexec  ngspice  plugins  qt.conf  README  README.jcl  resources  translations
[jcl@localhost eagle-9.6.2]$ tree plugins
plugins
├── bearer
│   ├── libqconnmanbearer.so
│   ├── libqgenericbearer.so
│   └── libqnmbearer.so
├── iconengines
│   └── libqsvgicon.so
├── imageformats
│   ├── libqgif.so
│   ├── libqicns.so
│   ├── libqico.so
│   ├── libqjpeg.so
│   ├── libqsvg.so
│   ├── libqtga.so
│   ├── libqtiff.so
│   ├── libqwbmp.so
│   └── libqwebp.so
├── platforms
│   └── libqxcb.so
├── printsupport
│   └── libcupsprintersupport.so
└── xcbglintegrations
    ├── libqxcb-egl-integration.so
    └── libqxcb-glx-integration.so

6 directories, 17 files

答案1

多年来,Eagle、OpenGL 和许多 Linux 发行版上使用的合成器之间一直存在问题。

根据文档QT威兰

X Composite 缓冲区集成应该适用于所有现代 X 服务器。它可以与 EGL 或 GLX 一起用作 OpenGL 后端。这必须与 xcb 平台插件使用的后端匹配。 (通常 GLX 是在 X11 上运行的 Qt 应用程序的默认设置。)

在我的个人的* 自 Eagle 版本 8.x 以来,Fedora 上的经验需要在运行时将环境变量设置QT_XCB_GL_INTEGRATION为值xcb_egl。例如:

$ QT_XCB_GL_INTEGRATION=xcb_egl ./eagle

这确实进入许多您的配置有不同的细微差别(即您使用的是 X11 还是 Wayland),但这是我发现的最一致的解决方案,引起了他的关注。

* 你的旅费可能会改变

相关内容