Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: Larry от Июнь 08, 2015, 15:37



Название: Ошибка при запуске (Qt5Gui.dll)
Отправлено: Larry от Июнь 08, 2015, 15:37
Добрый день, форумчане.
Подскажите пожалуйста, в чем может быть проблема, если при запуске программы она сразу падает и в "дополнительные сведения" указано, что проблема с Qt5Gui.dll?
Программа пока тестовая, используется виджет QOpenGLWidget. Падает на Windows 7 x64, но на другой машине, где стоит точно такая же ось (правда установлено qt) не падает. Также проверяли на windows 7 x32 и windows xp, то все работает.
В чем может быть проблема? Спасибо.


Название: Re: Ошибка при запуске (Qt5Gui.dll)
Отправлено: Пантер от Июнь 08, 2015, 16:41
Посмотри все ли либы есть черед DllWalker.


Название: Re: Ошибка при запуске (Qt5Gui.dll)
Отправлено: Larry от Июнь 08, 2015, 17:00
проверяли, все библиотеки на месте. Главное на дровах без  проблем...


Название: Re: Ошибка при запуске (Qt5Gui.dll)
Отправлено: Larry от Июнь 08, 2015, 17:52
Проверил работу еще на нескольких машинах и везде работает. Сошлись на том, что это проблемы или с осью или с железом ;D.


Название: Re: Ошибка при запуске (Qt5Gui.dll)
Отправлено: BuRn от Июнь 09, 2015, 01:03
Предлагаю вам заморочиться и потом рассказать нам. Соберите кути с сырцов и посмотрите где падает


Название: Re: Ошибка при запуске (Qt5Gui.dll)
Отправлено: qate от Июнь 09, 2015, 10:18
чистую венду в виртуалку
если падает - проблема не в железе )


Название: Re: Ошибка при запуске (Qt5Gui.dll)
Отправлено: Larry от Июнь 09, 2015, 12:11
Добрый день.
Все получилось проще. Видеокарта поддерживает opengl версии 1.1. Такой вопрос: если использовать только версию 1.1, то необходимо собирать qt из исходников?


Название: Re: Ошибка при запуске (Qt5Gui.dll)
Отправлено: Larry от Июнь 09, 2015, 12:26
Или же можно как-то указать в программе непосредственно?


Название: Re: Ошибка при запуске (Qt5Gui.dll)
Отправлено: __Heaven__ от Июнь 09, 2015, 12:27
Можно и 4.x использовать не собирая.
Вам нужно просто использовать те функции, которые поддерживаются вашей картой.


Название: Re: Ошибка при запуске (Qt5Gui.dll)
Отправлено: Larry от Июнь 09, 2015, 12:33
Так я и так ничего не использовал  ;D:
Код:
glBegin(GL_LINES);
        glVertex2d(50.567951, 30.825244);
        glVertex2d(50.567546, 30.826673);
        glVertex2d(50.566104, 30.831361);
        glVertex2d(50.565597, 30.832775);
glEnd();



Название: Re: Ошибка при запуске (Qt5Gui.dll)
Отправлено: __Heaven__ от Июнь 09, 2015, 12:58
Падает именно в этой части кода?


Название: Re: Ошибка при запуске (Qt5Gui.dll)
Отправлено: Larry от Июнь 09, 2015, 13:09
Падало при запуске, при этом в отладчике выводило
QOpenGLShaderProgram: could not create shader program
хотя шейдеры я не использовал.

Сейчас поставил видеокарту (до этого была встроенная), то все работает, но на другом компьютере все тоже.


Название: Re: Ошибка при запуске (Qt5Gui.dll)
Отправлено: __Heaven__ от Июнь 09, 2015, 13:21
Всё это очень странно.
Попробуйте, всё-таки, отследить точное место падения. А также, откуда посылается сообщение QOpenGLShaderProgram. Включите в настройках gdb остановку на ворнингах.
Быть может вы используете какую-то стороннюю либу с участием QOpenGLShaderProgram?


Название: Re: Ошибка при запуске (Qt5Gui.dll)
Отправлено: Larry от Июнь 09, 2015, 13:27
либ сторонних не подключал. С классом QGLWidget такого не было, а с QOpenGLWidget понеслось:)
Попробую, только надо снести драйвера видеокарты:)


Название: Re: Ошибка при запуске (Qt5Gui.dll)
Отправлено: Larry от Июнь 09, 2015, 14:17
отключил видеокарту:
Запускается Q:\Projects\PC\build-Path-Desktop_Qt_5_4_2_MSVC2010_OpenGL_32bit-Release\release\Path.exe...
Failed to load libEGL.dll (Не найден указанный модуль.)
class QWindowsEGLStaticContext *__cdecl QWindowsEGLStaticContext::create(class QFlags<enum QWindowsOpenGLTester::Renderer>): Failed to load and resolve libEGL functions
Failed to load opengl32sw.dll (Не найден указанный модуль.)
class QOpenGLStaticContext *__cdecl QOpenGLStaticContext::create(bool): Failed to load and resolve WGL/OpenGL functions
Failed to load libEGL.dll (Не найден указанный модуль.)
class QWindowsEGLStaticContext *__cdecl QWindowsEGLStaticContext::create(class QFlags<enum QWindowsOpenGLTester::Renderer>): Failed to load and resolve libEGL functions
Failed to load opengl32sw.dll (Не найден указанный модуль.)
class QOpenGLStaticContext *__cdecl QOpenGLStaticContext::create(bool): Failed to load and resolve WGL/OpenGL functions
QOpenGLWidget: Failed to create context
Failed to load libEGL.dll (Не найден указанный модуль.)
class QWindowsEGLStaticContext *__cdecl QWindowsEGLStaticContext::create(class QFlags<enum QWindowsOpenGLTester::Renderer>): Failed to load and resolve libEGL functions
Failed to load opengl32sw.dll (Не найден указанный модуль.)
class QOpenGLStaticContext *__cdecl QOpenGLStaticContext::create(bool): Failed to load and resolve WGL/OpenGL functions
QOpenGLWidget: Failed to create context
Failed to load libEGL.dll (Не найден указанный модуль.)
class QWindowsEGLStaticContext *__cdecl QWindowsEGLStaticContext::create(class QFlags<enum QWindowsOpenGLTester::Renderer>): Failed to load and resolve libEGL functions
Failed to load opengl32sw.dll (Не найден указанный модуль.)
class QOpenGLStaticContext *__cdecl QOpenGLStaticContext::create(bool): Failed to load and resolve WGL/OpenGL functions
QOpenGLWidget: Failed to create context
QOpenGLFunctions created with non-current context
Программа неожиданно завершилась.


Название: Re: Ошибка при запуске (Qt5Gui.dll)
Отправлено: Larry от Июнь 09, 2015, 14:30
Добавил 2 dll, которые не нашла программа. Теперь запускается без падения, но виджет opengl черный и нет вывода изображения.


Название: Re: Ошибка при запуске (Qt5Gui.dll)
Отправлено: __Heaven__ от Июнь 09, 2015, 14:42
Странно. А это нормально, что грузится gl для встраиваемых систем?


Название: Re: Ошибка при запуске (Qt5Gui.dll)
Отправлено: Larry от Июнь 09, 2015, 15:30
это не для встраиваемых систем. Сейчас пока разбираюсь с opengl для вывода картографической информации, но хотелось бы чтобы работало и на слабеньких машинах.


Название: Re: Ошибка при запуске (Qt5Gui.dll)
Отправлено: Larry от Июнь 09, 2015, 16:08
В принципе проблема решена. Оказалось, что на компьютере, где также были проблемы с программой, были драйвера подтянутые по умолчанию (Microsoft). Обновление драйверов избавило от проблемы. Все равно осталось не понятно, почему такое случилось, т.к. версия в данном случае opengl была 1.1.


Название: Re: Ошибка при запуске (Qt5Gui.dll)
Отправлено: __Heaven__ от Июнь 09, 2015, 16:24
А был ли там opengl в принципе? ;D
Может быть software отрисовка?


Название: Re: Ошибка при запуске (Qt5Gui.dll)
Отправлено: Larry от Июнь 09, 2015, 17:09
Возможно ;D