我用 C++ 构建了一个 Qt 应用程序,它利用 OpenCV 并在 Raspberry Pi 上运行。由于某种原因,我无法让该应用程序直接在 Raspberry Pi 的显示屏上运行。
如果我将显示发送到远程 xserver,应用程序运行正常,但如果我尝试运行它并在 Pi 上运行的 xserver 上显示它,则会出现以下错误:
libEGL warning: DRI2: failed to authenticate
qt5ct: using qt5ct plugin
** (LCVTrial_CppOpenCV:1914): WARNING **: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus was not provided by any .service files
(LCVTrial_CppOpenCV:1914): GLib-GObject-WARNING **: cannot register existing type 'GtkWidget'
(LCVTrial_CppOpenCV:1914): GLib-GObject-CRITICAL **: g_type_add_interface_static: assertion 'G_TYPE_IS_INSTANTIATABLE (instance_type)' failed
(LCVTrial_CppOpenCV:1914): GLib-GObject-WARNING **: cannot register existing type 'GtkBuildable'
(LCVTrial_CppOpenCV:1914): GLib-GObject-CRITICAL **: g_type_interface_add_prerequisite: assertion 'G_TYPE_IS_INTERFACE (interface_type)' failed
(LCVTrial_CppOpenCV:1914): GLib-CRITICAL **: g_once_init_leave: assertion 'result != 0' failed
(LCVTrial_CppOpenCV:1914): GLib-GObject-CRITICAL **: g_type_add_interface_static: assertion 'G_TYPE_IS_INSTANTIATABLE (instance_type)' failed
(LCVTrial_CppOpenCV:1914): GLib-GObject-CRITICAL **: g_type_register_static: assertion 'parent_type > 0' failed
运行到远程显示器时不会显示任何错误。
我制作了一个仅包含 GUI 的应用程序的“精简”版本,删除了 OpenCV,并且它在 Pi 的显示屏上运行良好。
任何关于在哪里寻找/调查的想法或方向将不胜感激!
最佳答案
Raspi 上缺少一些库 在raspi终端上尝试
sudo apt-get install at-spi2-core
在/etc/environment中添加
QT_QPA_PLATFORMTHEME=gtk2
不要忘记更新 gstreamer
希望对你有帮助
关于c++ - Qt OpenCV 应用程序无法在 Raspberry Pi 显示屏上运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53384888/