Название: Одновременная сборка для нескольких компиляторов Отправлено: niXman от Ноябрь 05, 2009, 00:21 Вот что нужно.
Есть исходники Кут. Лежат в "c:\qt" Вот чего хотелось бы: Запускать сборку одновременно для Mingw и MSVC. Для этого нужно указать результирующий каталог. Собственно вопрос: Как? п.с. посмотрел опции "configure.exe", там такого нет. какие варианты? Пробовал сделать так: 1. Создаем каталоги для нужных компиляторов. 2. Запускаем две консоли. 3. В каждой из них устанавливаем значение QMAKESPEC равное нужному компилятору. Цитировать set QMAKESPEC=win32-g++ 4. В каждой консоле, переходим в свой каталог.или set QMAKESPEC=win32-msvc2008 5. Запускаем "configure.exe" из исходного каталога с сорцами. Все необходимые хидеры, либы, бинарники, скопировались. Этап конфигурации прошел успешно. Но при запуске "nmake", после некоторого времени, показалось это: Цитировать cl -c -FIqt_pch.h -Yuqt_pch.h -Fptmp\obj\debug_shared\QtCored_pch.pch -n ologo -Zm200 -Zc:wchar_t- -Zi -MDd -W3 -w34100 -w34189 -GR -EHsc -DQT_SHARED -DQ T_THREAD_SUPPORT -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_BUILD_CORE_LIB -D QT_NO_USING_NAMESPACE -DQT_MAKEDLL -DQT_ASCII_CAST_WARNINGS -DQT3_SUPPORT -DQT_M OC_COMPAT -D_USE_MATH_DEFINES -DHB_EXPORT=Q_CORE_EXPORT -DQT_DLL -I"..\..\includ e" -I"..\..\include\QtCore" -I"tmp\rcc\debug_shared" -I"c:\qt\src\corelib\tmp" - I"global" -I"c:\qt\src\3rdparty\zlib" -I"c:\qt\src\3rdparty\harfbuzz\src" -I"c:\ qt\src\3rdparty\md5" -I"c:\qt\src\3rdparty\md4" -I"..\..\include\ActiveQt" -I"tm p\moc\debug_shared" -I"c:\qt\src\corelib" -I"." -I"c:\Qt\mkspecs\win32-msvc2008" -Fotmp\obj\debug_shared\ @C:\PROGRA~1\Temp\nmBC.tmp qtextstream.cpp c:\qt\src\corelib\io\qtextstream.cpp(3397) : fatal error C1083: Cannot open include file: 'qtextstream.moc': No such file or directory qfilesystemwatcher.cpp c:\qt\src\corelib\io\qfilesystemwatcher.cpp(631) : fatal error C1083: Cannot open include file: 'qfilesystemwatcher.moc': No such file or directory Generating Code... NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\cl.EXE"' : return code '0x2' Stop. NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\nmake.exe"' : return code '0x2' Stop. NMAKE : fatal error U1077: 'cd' : return code '0x2' Stop. Какие идеи? Название: Re: Одновременная сборка для нескольких компиляторов Отправлено: pastor от Ноябрь 05, 2009, 13:50 Эмм. Я так понял, ты пытаешься скомпилить одни и теже исходники (c:\qt) разными компиляторами одновременно, да? вопрос: а зачем так?
Название: Re: Одновременная сборка для нескольких компиляторов Отправлено: lit-uriy от Ноябрь 05, 2009, 16:22 >>Для этого нужно указать результирующий каталог.
Просто, в том каталоге в котором командуешь configure.exe и make, в нём Qt и будет собиратся. На Вин2к, а может и выше, есть проблема с этим, лучше собирать на том же диске что и исходники лежат. Иначе придётся ручками make-файлы править Название: Re: Одновременная сборка для нескольких компиляторов Отправлено: kuzulis от Ноябрь 05, 2009, 16:58 А может еще нужно и QMAKEDIR или DESTDIR устанавливать в консолях?
Название: Re: Одновременная сборка для нескольких компиляторов Отправлено: lit-uriy от Ноябрь 05, 2009, 17:14 нет, не нужно
Название: Re: Одновременная сборка для нескольких компиляторов Отправлено: lit-uriy от Ноябрь 05, 2009, 17:19 Пример, исходники располагаются в: X:\Qt_src
тогда Создаём каталог X:\Qt_build_1 Создаём окружение: Код
В каталоге X:\Qt_build_1 командуем: Код
П.С. Если Perl'а в области видимости нет, то Make-файл, вроде не создаётся, тогда после конфигурации командуем: Код
Название: Re: Одновременная сборка для нескольких компиляторов Отправлено: crackedmind от Ноябрь 05, 2009, 22:45 Цитировать П.С. Если Perl'а в области видимости нет, то Make-файл, вроде не создаётся, тогда после конфигурации командуем: угу, только вот не makefile, а вообще конфигурация не пройдет...отрывок из configure.exe Код: if(sourceDir != buildDir) { //shadow builds! Название: Re: Одновременная сборка для нескольких компиляторов Отправлено: lit-uriy от Ноябрь 06, 2009, 00:29 >>угу, только вот не makefile, а вообще конфигурация не пройдет...
Пройдет если качать qt-win-opensource-* там каталог include уже заполнен и он, как я понял просто копируется. Во всяком случае о том, что нужен Perl, я узнал только когда стал использовать qt-all-opensource-* П.С. я без Perl'а собирал только 4.4.* Название: Re: Одновременная сборка для нескольких компиляторов Отправлено: crackedmind от Ноябрь 06, 2009, 01:40 Нет. Perl нужен только для сборки из гита, либо для так называемого shadow build, когда бинарники складываются в отдельную папку, а не в ту где сорцы. Код до глянь который я привел :)
Название: Re: Одновременная сборка для нескольких компиляторов Отправлено: niXman от Ноябрь 07, 2009, 00:44 Чтоб не дублировать посты, вот: http://forum.vingrad.ru/forum/topic-278984.html
Спасибо всем отозвавшимся. |