| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > [QT 4] Проблема с запуском *exe после компиляции |
| Автор: Moby 20.1.2009, 11:59 |
| Написал прогу в Visual Studio. В папке Debug есть ехе'шник, жму на него а говорит "Приложению не удалось запуститься, поскольку QtCore4d.dll не был найден." Я вот сделал так, до этого у меня примеры не запускались и подсказали решение: Мой компутер -> свойства -> вкладка Дополнительно - > кнопка Переменные среды -> раздел Системные переменные -> переменная Path -> изменить и всталяеш туда пути "C:\QT\4.4.3\;C:\QT\4.4.3\bin\;" А без этого никак не обойтись? Неужели QT должно стоять и на том ПК, на котором собираются запускать программу, и так же в Path должен быть указан "C:\QT\4.4.3\;C:\QT\4.4.3\bin\;"? |
| Автор: betman_ru 20.1.2009, 13:02 |
| Если собрать статически, то ничего ненадо ... Экзешник, в размере потолстее. Поиши инфу про статическую сборку в QT, либо в гугле, либо на оф.сайте... |
| Автор: anatox91 20.1.2009, 13:34 |
| лучше всего просто положить все нужные длл-ки в папку с экзешником. Собирать статически во-первых очень долго, во-вторых дофига места на харде сожрет |
| Автор: ecspertiza 20.1.2009, 16:28 |
| Лично я за статическую зборку, ибо qt-шные dll-ки весят около 100 метров, а последний проект который я написал довольно большой, под статической сборкой release версия весит около 12 метров. |
| Автор: W4FhLF 20.1.2009, 16:51 |
| А зачем таскать все dll? Можно взять только необходимы и сжать их upx(например QtCore4.dll + QtGui4.dll сжатые весят 3.5 мегабайта вместо 9). |
| Автор: pan2004 20.1.2009, 17:20 | ||
ну 100 метров это ты загнул... Или ты всегда debug версией пользуешься? Да и автору стоит посоветовать скомпилить в release, на порядок меньше тащить за собой придется |
| Автор: ecspertiza 20.1.2009, 17:30 |
Пользуюсь QT 4.4.3 QtGuid4.dll весит 63 метра + QtCored4.dll 17 метров и того 80 метров, а ели ещё и с БД работаем то это уже ... |
| Автор: pan2004 20.1.2009, 18:07 |
ну конечно же это дебаг версии, ты на те которые без буквы "d" смотри... |
| Автор: betman_ru 20.1.2009, 18:33 |
| Правильно! Используй релиз версию, а не дебаг. И ещё ... при разработке на VS размер значительно меньше, чем у mingv. |
| Автор: SABROG 20.1.2009, 18:53 | ||
Ну меньше 7Мб ты не получишь (без UPX) даже на простейшем "Hello, World". Приходится тянуть все классы за раз. Qt рассчитана на то, чтобы библиотеки устанавливались как Java Runtime Environment в системную директорию и эти dll должны использовать все программы на Qt. Так и сделано в Linux. Еще стоит задуматься, что при статической линковки в проектах, которые используют плагины код Qt будет включен 2 раза в каждый модуль. А это потеря оперативы и общее увеличение размера дистрибутива. |
| Автор: Moby 20.1.2009, 19:44 |
| Рад, что хоть эта моя тема оказалась серьёзнее чем "А как нарисовать..."! Спасибо за ответы. Про статистическую сборку не знал, учту. Но решил на данный момент сделать проще, как и советовали. Сделал релиз версию и кинул две нужные dll'ки. Всё вместе весит 10-ь метров, я бы сказал для нынешних времён "детский" размер. И все работает. Да же на Vista'е запустилось. Всем спасибо! |