У меня есть два приложения, которые были созданы с использованием QTCreator (Qt Creator 4.2.0
На основании Qt 5.7.1) ony my Raspberry Pi 3 Модель B + (растяжка Raspbian 9.6) .
Первое приложение - это не Ct Plain C ++, которое использует opencv. Где приложение будет делать распознавание лиц. Второе приложение - это приложение QT Widgets, где у меня есть только несколько QDialogs.
Оба приложения создаются и запускаются на пи. Они отлично бегают и делают то, что должны. Хотя приложение виджета QT выдает это предупреждение во время выполнения:
libEGL warning: DRI2: failed to authenticate
qt5ct: using qt5ct plugin
Но все равно работает очень хорошо.
Проблема возникает, когда я объединяю эти два приложения . Даже когда я просто поставил эти строки:
INCLUDEPATH += "/usr/local/include/opencv4"
LIBS += `pkg-config --libs opencv4`
в файле .pro моего приложения QT Widget, чтобы я мог использовать opencv в этом приложении, которое выдает мне следующие предупреждения и ошибки:
libEGL warning: DRI2: failed to authenticate
qt5ct: using qt5ct plugin
(rpi2:1613): GLib-GObject-WARNING **: cannot register existing type 'GtkWidget'
(rpi2:1613): GLib-GObject-CRITICAL **: g_type_add_interface_static: assertion 'G_TYPE_IS_INSTANTIATABLE (instance_type)' failed
(rpi2:1613): GLib-GObject-WARNING **: cannot register existing type 'GtkBuildable'
(rpi2:1613): GLib-GObject-CRITICAL **: g_type_interface_add_prerequisite: assertion 'G_TYPE_IS_INTERFACE (interface_type)' failed
(rpi2:1613): GLib-CRITICAL **: g_once_init_leave: assertion 'result != 0' failed
(rpi2:1613): GLib-GObject-CRITICAL **: g_type_add_interface_static: assertion 'G_TYPE_IS_INSTANTIATABLE (instance_type)' failed
(rpi2:1613): GLib-GObject-CRITICAL **: g_type_register_static: assertion 'parent_type > 0' failed
Я попытался исследовать это и выяснить, что возможная причина этого может быть, когда QT был обновлен до 5.7.0-1, GTK в стиле виджета недоступен для приложений QT5 (я видел это здесь ). И обходной путь для этого должен был бы поместить это QT_STYLE_OVERRIDE=gtk2
или это QT_QPA_PLATFORMTHEME=gtk2
в мой / etc / environment и затем перезагрузиться. Но оба они не сработали.
Что мне нужно сделать, чтобы решить эту проблему?