Название: Static Qt двух версий (MinGW и VC8) Отправлено: Grinchman от Апрель 08, 2009, 07:56 Хочется иметь возможность собирать проект разными компиляторами, в частности MinGW-g++ и MSVC8.
Если я правильно понимаю, то для этого с начала мне требуется собрать две разные версии Qt в разных директориях с помощью этих двух компиляторов соответственно? И далее собирать свой проект подлинковывая либы и хёдеры из нужной директории Qt? Каким образом это разруливается например для qmake`а в .pro файлах? P.S.: В моё случае требуется тоже самое сделать, но в CMake. Название: Re: Static Qt двух версий (MinGW и VC8) Отправлено: spirit от Апрель 08, 2009, 08:23 переменные окружения не нужно жестко забивать.
у меня есть два батника, вот примеры батник для minGW Цитировать @SET QTDIR=D:\develop\Qt\2009.01\qt батник для VS2008@SET QMAKESPEC=win32-g++ @SET MINGWDIR=D:\develop\Qt\2009.01\mingw @SET PATH=%QTDIR%\bin;%MINGWDIR%\bin; @SET INCLUDE=%QTDIR%\include;%MINGWDIR%\include; @SET LIB=%QTDIR%\lib;%MINGWDIR%\lib; Цитировать @SET QTDIR=D:\develop\qt-4.5.0-vs2008 в зависимости от компиля и вызываю эти батники.@SET QMAKESPEC=win32-msvc2008 CALL "C:\Program Files\Microsoft Visual Studio 9.0\VC\vcvarsall.bat" @SET PATH=%QTDIR%\bin; @SET INCLUDE=%QTDIR%\include; @SET LIB=%QTDIR%\lib; Название: Re: Static Qt двух версий (MinGW и VC8) Отправлено: lit-uriy от Апрель 08, 2009, 08:48 >>Каким образом это разруливается например для qmake`а в .pro файлах?
для него как раз ни каким, в нём самом зашит путь к каталогу где его собрали. И при генерации make-файлов он свои внутренние пути и подставляет. А способ, которым пользуется spirit, работает очень просто: в зависимости от текущего окружения (@SET PATH=%QTDIR%\bin;) при вызове qmake вызывается тот котрый виден через переменную PATH, ну а qmake знает свои пути. Название: Re: Static Qt двух версий (MinGW и VC8) Отправлено: spirit от Апрель 08, 2009, 08:54 А способ, которым пользуется spirit, работает очень просто: в зависимости от текущего окружения (@SET PATH=%QTDIR%\bin;) при вызове qmake вызывается тот котрый виден через переменную PATH, ну а qmake знает свои пути. ага, именно так :)Название: Re: Static Qt двух версий (MinGW и VC8) Отправлено: Grinchman от Апрель 08, 2009, 09:51 Спасибо!
Опробую как только смогу собрать Qt под MinGW, а с этим как раз возникли проблемы. Устновил MinGW, прописал в PATH путь до /bin директории. Qt конфигурю следующим способом: 1) в файле mkspecs/win32-g++/qmake.conf добавляю к переменной QMAKE_LFLAGS ключик -static (Qt нужна статическая) 2) запускаю конфигуратор: configure -static -release -xplatform win32-g++ 3) запускаю mingw32-make, выдается следующие ошибки: Код: In file included from ../../include/QtCore/qatomic_windows.h:1, Название: Re: Static Qt двух версий (MinGW и VC8) Отправлено: spirit от Апрель 08, 2009, 10:03 ты юзаешь этот (http://prog.org.ru/wiki/index.php?title=%D0%A1%D0%B1%D0%BE%D1%80%D0%BA%D0%B0_Qt_%D0%B1%D0%B5%D0%B7_%D0%B7%D0%B0%D0%B2%D0%B8%D1%81%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D0%B5%D0%B9_%28MinGW%29) мануал?
Название: Re: Static Qt двух версий (MinGW и VC8) Отправлено: Grinchman от Апрель 08, 2009, 10:09 Да, именно его. Qt версии 4.4.3, MinGW-gcc\g++ версия 3.4.5-20060117-3
Название: Re: Static Qt двух версий (MinGW и VC8) Отправлено: pastor от Апрель 08, 2009, 10:15 Цитировать 2) запускаю конфигуратор: configure -static -release -xplatform win32-g++ xplatform? Цитировать -xplatform <spec> .. The operating system and compiler you are cross compiling to. Пробуй: configure -static -release -platform win32-g++ Название: Re: Static Qt двух версий (MinGW и VC8) Отправлено: lit-uriy от Апрель 08, 2009, 10:38 2 Grinchman, ты лучше батник состряпай как у spirit'а, а в конце допиши:
cmd.exe Пути к еще несобраным Qt'ям укажи. И в открывшейся командной строке напиши configure без указания платформы (т.к. в батнике уже указана) |