Russian Qt Forum

Qt => Установка, сборка, отладка, тестирование => Тема начата: Wain`s Cat от Апрель 21, 2011, 00:39



Название: Сборка *.exe релиза
Отправлено: Wain`s Cat от Апрель 21, 2011, 00:39
Как мне собрать *.exe файл релиза в Qt Creator, чтобы его можно было запустить на другом компьютере?

Сейчас же пишет, что нужна библиотека QtCore.dll

Нельзя ли ее внутрь *.exe добавить или нужно кидать в ту же папку, что и *.exe?


Название: Re: Сборка *.exe релиза
Отправлено: Fat-Zer от Апрель 21, 2011, 00:55
1) чтобы "добавить внутрь" - читай про статическую сборку qt
2) можно кидать в ту же папку
3) пользуйся поиском.


Название: Re: Сборка *.exe релиза
Отправлено: merke от Апрель 21, 2011, 08:45
Берешь библиотеки из директории с установленным Qt и копируешь их в папку со своей прогой.


Название: Re: Сборка *.exe релиза
Отправлено: GreatSnake от Апрель 21, 2011, 09:01
Цитировать
Берешь библиотеки из директории с установленным Qt и копируешь их в папку со своей прогой.
И для чего ему нужна вся эта туева туча либ?

2 Wain`s Cat:
Можно натравить твой экзешник на depends.exe (Dependency Walker - поставляется с VS, если оный не стоит, то берёшь здесь (http://www.dependencywalker.com)) и определить требуемые либы.


Название: Re: Сборка *.exe релиза
Отправлено: Wain`s Cat от Апрель 21, 2011, 10:27
Я добавлял и в файл проекта *.pro строчку CONFIG+=static, и в настройках проекта указывал эту строчку в дополнительных параметрах qmake.exe. Но все равно не получал нужного результата.


Название: Re: Сборка *.exe релиза
Отправлено: Пантер от Апрель 21, 2011, 10:36
Нужно сначала Qt статически собрать. Но, ИМХО, лучше найти нужные зависимости и положить их рядом с exe.


Название: Re: Сборка *.exe релиза
Отправлено: Fat-Zer от Апрель 21, 2011, 17:44
кстати, в тему вопрос возник: под винду как зовётся аналог ldd?


Название: Re: Сборка *.exe релиза
Отправлено: Пантер от Апрель 21, 2011, 18:16
кстати, в тему вопрос возник: под винду как зовётся аналог ldd?
Dependency Walker


Название: Re: Сборка *.exe релиза
Отправлено: lega4 от Май 15, 2011, 18:51
Есть у меня проект, я его собираю, пытаюсь запустить не из IDE, а просто из винды. Выпадают ошибки на разнообразные dll, я их нахожу и копирую в папку с прогой. В итоге прога запускается, но такая фигня - в коде у меня есть нечто, что по нажатию на кнопку качает из интернета картинку и ставит ее на label на формочке. Если запускать из IDE, то все работает, а если из винды с других компов (На моем работает и при запуске из винды), то картинки просто нету. То ли не загружается, то ли не натягивается на label... Подскажите, что можно сделать...


Название: Re: Сборка *.exe релиза
Отправлено: Пантер от Май 16, 2011, 07:32
Нужно еще плугины с собой таскать. http://doc.qt.nokia.com/4.7/plugins-howto.html (http://doc.qt.nokia.com/4.7/plugins-howto.html)


Название: Re: Сборка *.exe релиза
Отправлено: BigHom от Май 17, 2011, 13:27
Запускаю exe -шник на другом компьютере - выдаётся сообщение "приложение не запущено, поскольку оно некорректно настроено.Повторная установка решит данную проблему" - похоже также нужны какие-то dll  -только какие не понятно... Или как собрать чтоб в екзешнике всё было включено?


Название: Re: Сборка *.exe релиза
Отправлено: Mikhail от Май 17, 2011, 14:42
Скорее всего требуются Visual C++ Runtime files
На другом компьютере они отсутствуют.
Запусти vcredist_x86.exe из комплекта Visual C++


Название: Re: Сборка *.exe релиза
Отправлено: BigHom от Май 17, 2011, 15:35
Запустил vcredist_x86.exe на обоих компьютерах  (где отлаживается и где запускается программа )  - надпись на чужом компьютере таже самая - а при запуске  depends.exe (советуемом выше) -  сообщает , что нет  следующих dll : IESHIMS.DLL и WER.DLL . Поиск на компьютере , где собирается exe-шник и где всё работает таких dll не находит...