Russian Qt Forum
Ноябрь 26, 2024, 10:35 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Запуск ехе-файла  (Прочитано 7242 раз)
demaker
Птица говорун
*****
Offline Offline

Сообщений: 962


Просмотр профиля
« : Апрель 09, 2014, 15:46 »

Подскажите пожалуйста.
Собрал проект взял ехе-файл, перетащил на другую машину.
Приложение потребовало файл QtGui4d.dll(файл весит 155 Мб).
Можно как-нибудь сделать так, чтобы приложение работало без QtGui4d.dll???
Записан
Bepec
Гость
« Ответ #1 : Апрель 09, 2014, 15:59 »

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

Релизные dll весят около 9 мб Улыбающийся
Записан
OKTA
Гость
« Ответ #2 : Апрель 09, 2014, 16:11 »

А во 2?  Смеющийся
Записан
demaker
Птица говорун
*****
Offline Offline

Сообщений: 962


Просмотр профиля
« Ответ #3 : Апрель 09, 2014, 16:14 »

Да нет кидаю релизную и требует  Непонимающий
Записан
Bepec
Гость
« Ответ #4 : Апрель 09, 2014, 16:19 »

Мдамс)
2) Вы собрали дебажную версию программы. К ней прилинкованы дебажные dll. Ты собери релизную. И будет тебе счастье с релизными dll
Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #5 : Апрель 09, 2014, 16:49 »

Да нет кидаю релизную и требует  Непонимающий

Релизная не потребовала бы dll'ки с суффиксами d (т.е. debug) ( QtGui4d.dll ) =)
Вот когда будет требовать QtGui4.dll, тогда это точно релизная )) Да и как писалось выше, дэбажные всегда занимают больше места - и ехе, и dll'ки Улыбающийся
Записан

lesav
Частый гость
***
Offline Offline

Сообщений: 235


qnx.org.ru


Просмотр профиля WWW
« Ответ #6 : Апрель 09, 2014, 19:33 »

Это все баги в QtCreator-е
Записан

demaker
Птица говорун
*****
Offline Offline

Сообщений: 962


Просмотр профиля
« Ответ #7 : Апрель 10, 2014, 14:55 »

Код:
"#############################################################################
# Makefile for building: MyMTLYNX
# Generated by qmake (2.01a) (Qt 4.7.3) on: ?? 10. ??? 15:51:24 2014
# Project:  ..\input\MyMTLYNX.pro
# Template: app
# Command: d:\qtsdk\desktop\qt\4.7.3\mingw\bin\qmake.exe -spec d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\win32-g++ -o Makefile ..\input\MyMTLYNX.pro
#############################################################################

first: debug
install: debug-install
uninstall: debug-uninstall
MAKEFILE      = Makefile
QMAKE         = d:\qtsdk\desktop\qt\4.7.3\mingw\bin\qmake.exe
DEL_FILE      = del
CHK_DIR_EXISTS= if not exist
MKDIR         = mkdir
COPY          = copy /y
COPY_FILE     = $(COPY)
COPY_DIR      = xcopy /s /q /y /i
INSTALL_FILE  = $(COPY_FILE)
INSTALL_PROGRAM = $(COPY_FILE)
INSTALL_DIR   = $(COPY_DIR)
DEL_FILE      = del
SYMLINK       =
DEL_DIR       = rmdir
MOVE          = move
CHK_DIR_EXISTS= if not exist
MKDIR         = mkdir
SUBTARGETS    =  \
debug \
release

debug: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug
debug-make_default: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug
debug-make_first: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug first
debug-all: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug all
debug-clean: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug clean
debug-distclean: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug distclean
debug-install: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug install
debug-uninstall: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug uninstall
release: $(MAKEFILE).Release FORCE
$(MAKE) -f $(MAKEFILE).Release
release-make_default: $(MAKEFILE).Release FORCE
$(MAKE) -f $(MAKEFILE).Release
release-make_first: $(MAKEFILE).Release FORCE
$(MAKE) -f $(MAKEFILE).Release first
release-all: $(MAKEFILE).Release FORCE
$(MAKE) -f $(MAKEFILE).Release all
release-clean: $(MAKEFILE).Release FORCE
$(MAKE) -f $(MAKEFILE).Release clean
release-distclean: $(MAKEFILE).Release FORCE
$(MAKE) -f $(MAKEFILE).Release distclean
release-install: $(MAKEFILE).Release FORCE
$(MAKE) -f $(MAKEFILE).Release install
release-uninstall: $(MAKEFILE).Release FORCE
$(MAKE) -f $(MAKEFILE).Release uninstall

Makefile: ../input/MyMTLYNX.pro  d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/win32-g++/qmake.conf d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/qconfig.pri \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/modules/qt_webkit_version.pri \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/features/qt_functions.prf \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/features/qt_config.prf \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/features/exclusive_builds.prf \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/features/default_pre.prf \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/features/win32/default_pre.prf \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/features/debug.prf \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/features/debug_and_release.prf \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/features/default_post.prf \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/features/win32/default_post.prf \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/features/win32/rtti.prf \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/features/win32/exceptions.prf \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/features/win32/stl.prf \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/features/shared.prf \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/features/warn_on.prf \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/features/qt.prf \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/features/win32/thread.prf \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/features/moc.prf \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/features/win32/windows.prf \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/features/resources.prf \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/features/uic.prf \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/features/yacc.prf \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/mkspecs/features/lex.prf \
d:/QtSDK/Desktop/Qt/4.7.3/min
gw/mkspecs/features/include_source_dir.prf \
d:/QtSDK/Desktop/Qt/4.7.3/mingw/lib/qtmaind.prl
$(QMAKE) -spec d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\win32-g++ -o Makefile ..\input\MyMTLYNX.pro
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\qconfig.pri:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\modules\qt_webkit_version.pri:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\features\qt_functions.prf:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\features\qt_config.prf:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\features\exclusive_builds.prf:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\features\default_pre.prf:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\features\win32\default_pre.prf:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\features\debug.prf:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\features\debug_and_release.prf:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\features\default_post.prf:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\features\win32\default_post.prf:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\features\win32\rtti.prf:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\features\win32\exceptions.prf:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\features\win32\stl.prf:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\features\shared.prf:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\features\warn_on.prf:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\features\qt.prf:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\features\win32\thread.prf:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\features\moc.prf:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\features\win32\windows.prf:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\features\resources.prf:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\features\uic.prf:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\features\yacc.prf:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\features\lex.prf:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\features\include_source_dir.prf:
d:\QtSDK\Desktop\Qt\4.7.3\mingw\lib\qtmaind.prl:
qmake: qmake_all FORCE
@$(QMAKE) -spec d:\QtSDK\Desktop\Qt\4.7.3\mingw\mkspecs\win32-g++ -o Makefile ..\input\MyMTLYNX.pro

qmake_all: FORCE

make_default: debug-make_default release-make_default FORCE
make_first: debug-make_first release-make_first FORCE
all: debug-all release-all FORCE
clean: debug-clean release-clean FORCE
distclean: debug-distclean release-distclean FORCE
-$(DEL_FILE) Makefile

check: first

debug-mocclean: $(MAKEFILE).Debug
$(MAKE) -f $(MAKEFILE).Debug mocclean
release-mocclean: $(MAKEFILE).Release
$(MAKE) -f $(MAKEFILE).Release mocclean
mocclean: debug-mocclean release-mocclean

debug-mocables: $(MAKEFILE).Debug
$(MAKE) -f $(MAKEFILE).Debug mocables
release-mocables: $(MAKEFILE).Release
$(MAKE) -f $(MAKEFILE).Release mocables
mocables: debug-mocables release-mocables
FORCE:

$(MAKEFILE).Debug: Makefile
$(MAKEFILE).Release: Makefile

А что означает, выше приведенный текст в консоле, при запуске приложения?
Записан
QPeter
Гость
« Ответ #8 : Апрель 12, 2014, 22:31 »

А если просит Qt5Core.dll что делать?)
Записан
Vamireh
Гость
« Ответ #9 : Апрель 12, 2014, 22:40 »

А если просит Qt5Core.dll что делать?)

Один из следующих вариантов:
1) Прописать в переменную PATH путь до папки bin (там где эта Qt5Core.dll лежит)
2) Положить ее в папку с екзешником
3) Пересобрать Qt с ключом -static и забыть про зависимости от dll
Записан
QPeter
Гость
« Ответ #10 : Апрель 12, 2014, 23:25 »

Ну когда прописываешь PATH выдает что отсутствует libgcc_s_dw2-1.dll

Если положить её в файл с экзешником он будет просить ещё порядка 20 других dll файлов и в итоге всё равно выдаст какую то ошибку. Делал так, не помню уже что он писал, но проект был сломан и потом не собирался даже их Creator(a).

А ключ static- это как?)
Строит глазки
Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #11 : Апрель 13, 2014, 02:49 »

Ну когда прописываешь PATH выдает что отсутствует libgcc_s_dw2-1.dll

Прописать туда же путь к папке с компилятором (у меня это D:\MinGW\bin)
Записан

QPeter
Гость
« Ответ #12 : Апрель 14, 2014, 01:34 »

Цитировать
Прописать туда же путь к папке с компилятором (у меня это D:\MinGW\bin)
Закинул и как то не помогло.(
Вообще желателен такой способ при котором приложение будет запускаться и на других ПК.)
Записан
OKTA
Гость
« Ответ #13 : Апрель 14, 2014, 09:54 »

Запускаешь и кидаешь в папочку с exe все файлы, которые он попросит. А попросит он только то, что ты использовал в проекте - ничего лишнего.
Ну или как уже посоветовали, собрать Qt статически, чтобы все библиотеки зашивались в exe-файл, а как это сделать, поищите в поиске, эту тему мусолили 100500 раз уже.
Записан
Old
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4350



Просмотр профиля
« Ответ #14 : Апрель 14, 2014, 09:56 »

Запускаешь и кидаешь в папочку с exe все файлы, которые он попросит. А попросит он только то, что ты использовал в проекте - ничего лишнего.
Ну конечно, а плагины? Улыбающийся
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.167 секунд. Запросов: 23.