Russian Qt Forum
Ноябрь 24, 2024, 08:26
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Вопросы новичков
>
[РЕШЕНО]Требуемые файлы для запуска программы
Страниц: [
1
]
2
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: [РЕШЕНО]Требуемые файлы для запуска программы (Прочитано 19876 раз)
eXeLe
Гость
[РЕШЕНО]Требуемые файлы для запуска программы
«
:
Март 11, 2013, 15:16 »
Qt5 с mingw4.7, QtCreator 2.6
Написал программку Qt Gui, через крейтер запускается отлично, переключаюсь на "Release", компилирую.
Пробую запускать из папки с программой - хочет dll-ок.
Кидаю ей:
D3DCompiler_43.dll
icudt49.dll
icuin49.dll
icuuc49.dll
libgcc_s_sjlj-1.dll
libGLESv2.dll
libstdc++-6.dll
libwinpthread-1.dll
Qt5Core.dll
Qt5Gui.dll
Qt5Sql.dll
Qt5Widgets.dll
Дллки брал тут: %путь_к_Qt%\Qt5.0.1\5.0.1\mingw47_32\bin
Так же в корне каталога со своей прогой создал папку sqldrivers и скинул туда все содержимое: %путь_к_Qt%\Qt5.0.1\5.0.1\mingw47_32\plugins\sqldrivers (дрова odbc)
Но вместо запуска, прога начинает ругаться на:
Цитировать
Microsoft Visual C++ Runtime Library
This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
К сожалению, это дает мало понимания того, в чем же осталась проблема?
Были мысли, что дллки беру не оттуда, но только в %путь_к_Qt%\Qt5.0.1\5.0.1\mingw47_32\bin есть все, что нужно проге.
«
Последнее редактирование: Март 11, 2013, 16:00 от eXeLe
»
Записан
alex312
Хакер
Offline
Сообщений: 606
Re: Требуемые файлы для запуска программы
«
Ответ #1 :
Март 11, 2013, 15:26 »
http://www.prog.org.ru/topic_24263_0.html
Записан
eXeLe
Гость
Re: Требуемые файлы для запуска программы
«
Ответ #2 :
Март 11, 2013, 15:28 »
там о 10-й студии речь.
я сразу указал, что mingw у меня.
на всякий случай попробовал скопировать platforms - реакции ноль
«
Последнее редактирование: Март 11, 2013, 15:30 от eXeLe
»
Записан
alexis031182
Гость
Re: Требуемые файлы для запуска программы
«
Ответ #3 :
Март 11, 2013, 15:31 »
В списке не хватает "platforms/qwindows.dll". Для mingw оно тоже нужно.
Записан
eXeLe
Гость
Re: Требуемые файлы для запуска программы
«
Ответ #4 :
Март 11, 2013, 15:32 »
да, по совету выше все же скопировал каталог platforms к себе.
лучше не стало, но раз нужно - пусть будет =)
Записан
eXeLe
Гость
Re: Требуемые файлы для запуска программы
«
Ответ #5 :
Март 11, 2013, 15:59 »
погуглил еще усерднее на тему "qt5 mingw dependencies"
среди перекрестных ссылок между темами различных форумов набрел на требование
libEGL.dll
, которое никак не указывается программой, как нехватающая ДЛЛка.
Записан
alexis031182
Гость
Re: [РЕШЕНО]Требуемые файлы для запуска программы
«
Ответ #6 :
Март 11, 2013, 17:39 »
Да, egl тоже обязательно.
Записан
Bepec
Гость
Re: [РЕШЕНО]Требуемые файлы для запуска программы
«
Ответ #7 :
Март 11, 2013, 19:30 »
Qt5 вообще построена на противоречиях
Я целых 20 минут искал и думал, почему ж прога не запускается ) А там всего то была дллка, цепляющаяся динамически (тот самый platforms). Почему сделано так - непонятно. Вероятно от великого желания соблюсти стандарт плагинов
Записан
kambala
Джедай : наставник для всех
Offline
Сообщений: 4747
Re: [РЕШЕНО]Требуемые файлы для запуска программы
«
Ответ #8 :
Март 11, 2013, 20:07 »
зачем сидеть думать, если есть тотал коммандер и dependency walker?
Записан
Изучением C++ вымощена дорога в Qt.
UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
Bepec
Гость
Re: [РЕШЕНО]Требуемые файлы для запуска программы
«
Ответ #9 :
Март 11, 2013, 21:14 »
Как вы, милостивый государь, отследите динамически подключающуюся дллку?
Да, depends её не видит. Да, её нет в зависимостях exe. Да, программа не падает, просто не запускается.
PS так же можно попытаться отследить зависимость от openssl. Та же фигня с плагинами имейджев и драйверов sql
Записан
kambala
Джедай : наставник для всех
Offline
Сообщений: 4747
Re: [РЕШЕНО]Требуемые файлы для запуска программы
«
Ответ #10 :
Март 11, 2013, 21:36 »
QtCore, QtGui и т.п. тоже ведь динамически цепляются, так что ты какую-то неверную терминологию используешь
Записан
Изучением C++ вымощена дорога в Qt.
UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
twp
Гость
Re: [РЕШЕНО]Требуемые файлы для запуска программы
«
Ответ #11 :
Март 11, 2013, 21:38 »
лол, как это не видит? Может имеется ввиду плагин? Тогда нужно смотреть вывод приложения в консоль - наверняка приложение ругнется что не загружен плагин.
Записан
Bepec
Гость
Re: [РЕШЕНО]Требуемые файлы для запуска программы
«
Ответ #12 :
Март 11, 2013, 21:53 »
Увы, нет, не видит. Он видит слинкованные библиотеки и зависимости. А плагины Qt подгружаются динамически. Используется Qt-шная система плагинов. Т.е. там прямо в коде динамически вытаскиваются функции и объекты. Можно посмотреть на примере других любых плагинов.
Записан
twp
Гость
Re: [РЕШЕНО]Требуемые файлы для запуска программы
«
Ответ #13 :
Март 11, 2013, 22:50 »
плагин конечно не видит, на то он и плагин, но ты ведь указал, что не видит зависимости от dll, таких как QtCore или QtGui.
Вот что выдает для дизайнера в убунте:
Цитата: Terminal
sergiy@vmware:~$ ldd /usr/local/Qt-5.0.1/bin/designer
linux-gate.so.1 => (0xb76e7000)
libQt5DesignerComponents.so.5 => /usr/local/Qt-5.0.1/lib/libQt5DesignerComponents.so.5 (0xb73d8000)
libQt5PrintSupport.so.5 => /usr/local/Qt-5.0.1/lib/libQt5PrintSupport.so.5 (0xb737e000)
libQt5Designer.so.5 => /usr/local/Qt-5.0.1/lib/libQt5Designer.so.5 (0xb6e0e000)
libQt5Widgets.so.5 => /usr/local/Qt-5.0.1/lib/libQt5Widgets.so.5 (0xb6761000)
libQt5Network.so.5 => /usr/local/Qt-5.0.1/lib/libQt5Network.so.5 (0xb6632000)
libQt5Xml.so.5 => /usr/local/Qt-5.0.1/lib/libQt5Xml.so.5 (0xb65ea000)
libQt5Gui.so.5 => /usr/local/Qt-5.0.1/lib/libQt5Gui.so.5 (0xb614d000)
libQt5Core.so.5 => /usr/local/Qt-5.0.1/lib/libQt5Core.so.5 (0xb5c56000)
...
Что-то подобное должно быть и на винде.
Записан
Bepec
Гость
Re: [РЕШЕНО]Требуемые файлы для запуска программы
«
Ответ #14 :
Март 12, 2013, 06:58 »
Кхм. Нигде я не писал, что он не видит QtCore с которым он слинкован
Я и писал про плагины, которые являются файлами, надо же, динамических библиотек аля qgif4.dll и прочая
Зависимости можно отследить только те, что слинкованы с проектом.
Для плагинов же используется обычное дёрганье по имени, вытаскивание объекта или функций. Это отследить невозможно сразу, т.е. зависимости эти можно увидеть только отслеживая обращения к диску
Собственно именно на это ушли мои 20 минут.
PS в принципе плагины хорошо, но такие как из каталога platforms - это бред. Нигде про них особо не упомянуто, в проекте их увидеть нереально. (ну или я не обращал внимания) Т.е. ты не узнаешь об этой зависимости и будешь много думать, запустив прогу на виртуалке и недоумевая, почему ничего не работает
Записан
Страниц: [
1
]
2
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...