"QVNCServer created on port 5900"
указывает, что ваши библиотеки Qt были скомпилированы для включения сервера Qt VNC.QVNCServer не является полноценным VNC-сервером, но является драйвером дисплея Qt, где выходные данные доступны как VNC-сервер на сетевом интерфейсе.«VNC-сервер» не является отдельным процессом и проще, чем полноценный VNC-сервер, поскольку он может одновременно обрабатывать только 1 VNC-клиента и поддерживает только VNC-клиенты, которые подключаются с глубиной 32 бита на канал.В версии Qt, которую я использую (4.2.2), есть ошибка, из-за которой QVNCServer зависает, если клиент VNC пытается подключиться с глубиной = 8 (что по умолчанию для многих клиентов VNC портативных устройств).Это может быть ваша проблема с подключением к серверу QVNC.Убедитесь, что ваш VNC-клиент настроен как 32-битный / 24-битный / полноцветный / полноцветный.Я пропатчил исходный код библиотеки QtGui, чтобы он немедленно отключился, если у клиента VNC нет глубины = 32.
Ниже приведены параметры для запуска приложения Qt из командной строки, но те же строки работают при запуске другой программой, как показано в вашем примере.
Чтобы запустить приложение только наДисплей VNC:
appname -qws -display "VNC::"
appname -qws -display "VNC::size=640x480:depth=32:0"
Чтобы запустить приложение для одновременного отображения одного и того же вывода в обоих локальных буферах кадров Linux (/ dev / fb0) (в моем случае это драйвер локального дисплея "sm501 ") и удаленный клиент VNC используют следующее:
appname -qws -display "Multi: sm501: VNC::"
(мне пришлось использовать 2 двоеточия с VNC, хотя это не было очевидно из документации.)
Самый простой способ отобразить различное содержимое на локальном дисплее и клиенте VNC - это запустить отдельные процессы Linux, каждый из которых задает различное отображение.Вы можете поддерживать несколько клиентов VNC, запуская приложения с разными номерами портов VNC:
appname1 -qws --renders to the local display
appname2 -qws -display VNC::0 --renders to VNC port 5900
appname3 -qws -display VNC::1 --renders to VNC port 5901
appname4 -qws -display VNC::2 --renders to VNC port 5902