Russian Qt Forum

Qt => Установка, сборка, отладка, тестирование => Тема начата: astramax57 от Апрель 08, 2009, 09:21



Название: Сборка приложения под windows х64
Отправлено: astramax57 от Апрель 08, 2009, 09:21
Доброго дня!
Введение: до того, как стал юзать qt для сборки х64 приложений использовал кросс-компиляцию, то есть собирал все под х32.
Использую windows xp sp2, студия 9, qt4.5.0. ОС назначения - сервер 2003 х64.

Первым делом решил собрать qt под х64 использую соответствующую командную строку студии.
configure.exe работает нормально до тех пор, пока не пытается запустить qmake. Поскольку он получается 64-разрядным, выполнение configure.exe завершается с ошибкой. Вроде все логично.

Ставлю сервер 2003 х64, студию  и собираю qt. Все сработало.
пытаюсь собрать проект с использованием полученных библиотек под 32-разрядной ОС, линкер выдает

Компоновка...
1>QtCored.lib(qcoreapplication.obj) : fatal error LNK1112: тип компьютера модуля "X86" противоречит типу целевого компьютера "x64"

Вроде опять все логично...

Собственно мои вопросы:
 Возможна ли кросс-компиляция проектов с использованием qt? Если да, то как собрать qt под х64 так, чтобы либы линковались без ошибок под х32? Или единственный выход - собирать проект под 64-разрядной ОС?


Название: Re: Сборка приложения под windows х64
Отправлено: EhTemka от Апрель 08, 2009, 15:06
НАсколько я понял, тебе нужно два варианта компиляции qt - 32 и 64. Просто для 32 приложений ты используешь qt скомпилённое 32-х битным компилятором, а для 64 приложений соответственно qt скомпилённое 64-х битным компилятором


Название: Re: Сборка приложения под windows х64
Отправлено: pastor от Апрель 08, 2009, 15:08
НАсколько я понял, тебе нужно два варианта компиляции qt - 32 и 64. Просто для 32 приложений ты используешь qt скомпилённое 32-х битным компилятором, а для 64 приложений соответственно qt скомпилённое 64-х битным компилятором

+1

Нужно иметь две сборки Qt под каждый компилятор (х32, х64)


Название: Re: Сборка приложения под windows х64
Отправлено: astramax57 от Апрель 09, 2009, 12:01
Спасибо, про разные сборки понял. Собрал под х64 системой qt, а проект под х32 (кросс) все работает. Еще раз спасибо!