QT wayland Не удалось создать дисплей (Нет такого файла или каталога)

Я пытаюсь создать приложение qt5 на yocto, используя qtwayland. Когда я запускаю свое приложение, «Вывод приложения» отображает эту ошибку

«Не удалось создать экран (Нет такого файла или каталога) Приложение завершилось с кодом выхода 1». .

Однако на самом деле bin-файл был успешно развернут, и я могу запустить его на своей плате, открыв файл вручную. Я тоже не могу отлаживать на своей плате. Как понять, спасибо.


person Bird Joey    schedule 16.04.2018    source источник
comment
Попробуйте export DISPLAY=:0.0   -  person JustWe    schedule 16.04.2018


Ответы (1)


Я предполагаю, что вы пытаетесь создать клиентское приложение Qt и запустить его на сервере Wayland?

В Wayland Failed to create display (No such file or directory) означает, что клиент Wayland не смог подключиться к серверу компоновщика/дисплея.

Поэтому вы должны убедиться, что ваш композитор работает. Какой из них вы используете?

Переменная среды XDG_RUNTIME_DIR также должна быть установлена ​​как при запуске компоновщика, так и при запуске вашего клиента.

Если клиенты запускаются, когда вы запускаете их на устройстве, возможно, платформой по умолчанию для вашей установки qt является eglfs, а не Wayland. Чтобы запускать приложения на Wayland, запустите его так:

./myapp -platform wayland

или установить

export QT_QPA_PLATFORM=wayland

Обратите внимание, что если вы используете компоновщик на основе Qt, то компоновщик, вероятно, все равно должен запускаться с бэкэндом eglfs.

person bobbaluba    schedule 17.04.2018
comment
Привет, боббалуба. Спасибо за вашу помощь. Я зеленая рука для QT и Wayland, поэтому я не могу ясно понять. Я могу запустить свое приложение на своей плате с помощью ./myapp -platform wayland, но не могу запускать или отлаживать его через QtCreator. Означает ли это, что композитор работает, если я могу запустить его на своей доске вручную. Что касается переменной среды, я должен установить ее на плате или на ПК? - person Bird Joey; 18.04.2018
comment
Если ./myapp -platform wayland показывает приложение, то у вас запущен компоновщик. Если вы не можете заставить его работать с qtcreator, возможно, он работает с неправильными параметрами или, возможно, XDG_RUNTIME_DIR установлен на что-то другое, чем на устройстве? Если вы сделаете ls $XDG_RUNTIME_DIR, вы сможете увидеть сокет wayland-0 для композитора. - person bobbaluba; 20.04.2018