23 июля 2019 г. 10:19

Запуск приложения на компьютере или виртуальной машине

Windows, QML

Собрал приложение QML для windows 64-bit. Оно на большенстве ккомпьютеров работает (windows 10, windows 7). Однако на виртуалных машинах и на некоторых версиях windows 10 не работает (приложение запускается с белым экраном, как будто не видит источник QML файлов). А именно не отображаются UI, однако создаётся ini файл и происходит конект к базе данных при запуске приложения.

Рекомендуем хостинг TIMEWEB
Рекомендуем хостинг TIMEWEB
Стабильный хостинг, на котором располагается социальная сеть EVILEG. Для проектов на Django рекомендуем VDS хостинг.
7

Добрый день. Возможно, что проблема в поддержке OpenGL на виртуальной машине.

Были такие предположения. Может есть драйвера для корректной работы приложения, т.к. виртуалка "голая"

Установите дополнения гостевой системы, если не делали этого. Обычно без них невозможно установить нормально расширение дисплея на виртуальной системе. Если учесть, что это имеет влияние на графику, то может решить и эту проблему.

они установлены

Ну вот теперь я несколько в ступоре. Запустите из консоли проект и посмотрите тогда, на что ругается. Также, следовало бы посмотреть в настройках самой виртуальной машины, что по поддержке OpenGL.

Я знаю точно, что есть некоторые проблемы в QML на последних видеокартах NVidia под Linux в свободных драйверах, если проект запускается из snap пакета (!). То есть без установки проприетарных драйверов нормально работать не хочет. И ситуация у меня под KDE Neon была схожая с вашей. Также белый экран. Забавно было, когда из snap работать не хочет, а при запуске не из snap всё нормально. Но там другие проблемы в корне.

Полагаю, что стоит поискать информацию на тему установки графических драйверов для виртуальных машин. Но вся проблема в том, что там драйвер эмулируется и ставится с дополнением гостевой ОС. То есть мало вероятно, что можно найти какую-то замену для графики.

Поэтому остаётся только запустить проект из консоли или из IDE в самой виртуальной машине, и посмотреть, на что ругается, если вообще ругается. Может быть не находит какую-то библиотеку. Ещё порекомендовал бы запустить какой-то проект из примеров в Qt Creator, чтобы сравнить поведение.

запускал из консоли приложение и дебажную, и релизную версию сообщений об ошибках или предупреждений не было. И ещё обнаружена проблема, что через тимвивер qml компоненты не юзаются.

Интересно... а можно ли заюзать компоненты в какой-нибудь игре через TeamViewer, которая отрисовывается средствами OpenGL, то есть которая написана на каком-нибудь движке, типо UE4. Очень похоже на подобную ситуацию. Если да, то по ходу TeamViewer не в ладах с компонентами, которые отрисовываются через графическое API

Комментарии

Только авторизованные пользователи могут публиковать комментарии.
Пожалуйста, авторизуйтесь или зарегистрируйтесь
Donate

Здравствуйте, уважаемые пользователи EVILEG !!!

Если сайт вам помог, то поддержите разработку сайта финансово, пожалуйста.

Вы можете сделать это следующими способами:

Спасибо, Евгений Легоцкой

AS
13 декабря 2019 г. 6:05
Aruzhan Seraliyeva

C++ - Тест 003. Условия и циклы

  • Результат:50баллов,
  • Очки рейтинга-4
AS
13 декабря 2019 г. 5:47
Aruzhan Seraliyeva

C++ - Тест 001. Первая программа и типы данных

  • Результат:40баллов,
  • Очки рейтинга-8
Т
11 декабря 2019 г. 16:56
Тома

C++ - Тест 003. Условия и циклы

  • Результат:50баллов,
  • Очки рейтинга-4
Последние комментарии
9 декабря 2019 г. 3:41
Евгений Легоцкой

Эта ошибка invalid use of incomplete type ‘class Ui::AnotherWindow’ обычно говорит о том, что не найдено определение класса или структуры. Типичная проблема - не подключён заголовочны…
НБ
9 декабря 2019 г. 3:36
Николай Батманов

Ну, не настолько со мной всё полхо...))) Вроде бы. Я ж кнопки отрисовываю.
9 декабря 2019 г. 3:14
Евгений Легоцкой

Добрый день. У вас ui файлов по ходу нет. UI файлы используются для вёрстки в графическом дизайнере.
НБ
9 декабря 2019 г. 3:05
Николай Батманов

Здравствуйте! Полностью скопировал ваш пример к себе, чтобы разобраться. А он не хочет запускаться, дает ошибку: invalid use of incomplete type ‘class Ui::AnotherWindow’ ui(new Ui…
8 декабря 2019 г. 7:23
Евгений Легоцкой

У меня здесь есть одна старая статья с примером векторного редактора. Там есть ответы на ваши вопросы. Поизучайте Qt/C++ - Урок 072. Пример векторного редактора на Qt QGraphicsItem, QG…
Сейчас обсуждают на форуме
t
13 декабря 2019 г. 17:17
tantrido

Всё работает, при чём тут колхоз?! ;) https://doc.qt.io/qt-5/qtqml-cppintegration-data.html Если что-то не работает - вопрос к собственным рукам и знаниям. Вопрос не корректен - мож…
13 декабря 2019 г. 10:16
Руслан Волшебник

Да, я посмотрел, вы абсолютно правы. Единственное, если я правильно понял, если срабатывает условие if (aggregates["max_id"] - aggregates["min_id"]) + 1 == aggregates["count"]: return sel…
t
13 декабря 2019 г. 9:53
tantrido

Ответ >>
13 декабря 2019 г. 8:39
Александр Панюшкин

Вроде да. Только там начинаются вопросы с тем, чтобы виджет бы в фокусе, чтобы до виджета это событие долетало.
ДК
13 декабря 2019 г. 7:48
Джон Кофи

Привет. Есть класс "ждун", который используется на разных виджетах: class WaiterDialog;#define WAITER_DIALOG Singleton<WaiterDialog>::instance()class WaiterDialog : public QObject, …
EVILEG
О нас
Услуги
© EVILEG 2015-2019
Рекомендует хостинг TIMEWEB