Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Программирование под Unix/Linux > Перенос программы на QT4


Автор: EnergoHokum 7.2.2007, 16:18
Доброго всем времени суток. Вылезла такая проблема, не знаю даже, в какую ветку лучше спросить: Есть Win-машина, где стоит QT4 и MinGW. Собираю проект - хорошо, собирается. Но при переносе на другую Win-машину, где ни QT, ни MinGW нет, не было и не будет, начинаются вполне справедливые крики про *.dll. Таскать с собой мешок дл-ок не хочется, как сказать компилятору, чтобы он их статически прицепил к экзешнику? Собираю проект по классической схеме: "qmake -project && qmake && make release".

Автор: Бонифаций 7.2.2007, 16:46
для этого надо иметь qt который скомпилированный в статические бибки. Однако с плагинами будут проблемы.  

А какой там мешок - несколько штук всего.

Автор: EnergoHokum 7.2.2007, 16:50
Ну, всё равно лучше один екзешник таскать, кроме того, эти дл-ки нужно и положить в правильный каталог. Должен же быть у GCC ключ, который делает статическую линковку? Просто моё английская не слишком хорош, подскажите ключ, чтобы в словари не закапываться...

Автор: Бонифаций 7.2.2007, 16:56
вам надо пересобрать qt4 для этого с (еслиинеизменяетсклероз) ./configure  --static. Вместо .dll создадутся соответсвующие .a фалы (статические бибки). А потом вашу программу собрать с новым qt - и она скомпонуется в один толстый .exe-шник.

Автор: EnergoHokum 7.2.2007, 17:03
Ой, как страшно получается... Нет ли возможности сделать это без пересборки всего QT? В Билдере, насколько я помню, можно проставить птицы, и он будет статически собирать екзешник "искаропки".

Автор: Бонифаций 7.2.2007, 17:12
увы.

Подробности тут:
http://doc.trolltech.com./4.1/deployment-windows.html#static-linking

Автор: EnergoHokum 7.2.2007, 17:25
Спасибо за помощь, думаю, тему можно закрыть.

Добавлено @ 17:26 
А вообще "абыдна, да?"

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)