Russian Qt Forum

Qt => Установка, сборка, отладка, тестирование => Тема начата: tim32 от Декабрь 12, 2009, 01:29



Название: Ошибка при компиляции
Отправлено: tim32 от Декабрь 12, 2009, 01:29
Доброго времени суток!
Подскажите пожалуйста в чем проблема.
При компиляции приложения написанного на qt 4.6 под vs2005 столкнулся с тем, что при компиляции в debug версии выскакивает окно с такой ошибкой:
"Unable to start programm '.../qtprojects/qttest/qttest.exe' The application has failed to start because the application configuration is incorrect. Review..."
В release все в порядке, приложение компилируется и запускается.
Заранее благодарен.


Название: Re: Ошибка при компиляции
Отправлено: sendevent от Декабрь 12, 2009, 01:39
попробуй рядом с бинарником положить дебаговые версии библиотек кьют (Qt*d4.dll).
если после этого заработает:
надо проверить переменные окружения (мож, %qtdir%/lib не в PATH, мож, первыми цепляются дебаговые верси от более старой qt, если она была установлена), можно еще с манифестами повозится...=)
если после этого не заработает:
кьют под VS 8 как ставил? у меня те же версии, но с нокии можно скачать бинарники только под 2008ю студию - пришлось пересобирать. если тоже собирал самостоятельно - перепроверь, может, собрал только релиз, или не distclean'ул перед сборкой и остались дебаговые версии, собранные под 2008.


Название: Re: Ошибка при компиляции
Отправлено: tim32 от Декабрь 12, 2009, 02:02
Да нет...я поставил бинарник qt4.6 под студию. И как я только что прочитал, он расчитан на 2008. Может в этом проблема? Придется ручками пересобирать?


Название: Re: Ошибка при компиляции
Отправлено: tim32 от Декабрь 12, 2009, 02:39
положил рядом с бинарником дебаговские версии библиотек qt. Ничего не помогло((((


Название: Re: Ошибка при компиляции
Отправлено: sendevent от Декабрь 12, 2009, 02:47
вроде как необязательно (http://labs.trolltech.com/blogs/2009/12/01/qt-460-released-early-due-to-good-behaviour/):
Цитировать
As you can see in the embedded manifest, for example in qtdemo.exe, this qt release appears to be linked against version 8.0.50727.4053 of the CRT.
<...>
just apply the below mentioned security patch to your Visual Studio 2005 Service Pack 1 installation. This will update the runtime libraries in “%WINDIR%/WinSxS” and also install the updated redist package.

http://www.microsoft.com/downloads/details.aspx?familyid=7c8729dc-06a2-4538-a90d-ff9464dc0197&displaylang=en
http://support.microsoft.com/?kbid=971090
мне не помогло (стоит уже следующее обновление - не стал заморачиваться). не мудрствуя лукаво пересобрал - все ок.
если будешь пересобирать - не забудь только перед конфигурированием сделать nmake distclean.


Название: Re: Ошибка при компиляции
Отправлено: tim32 от Декабрь 12, 2009, 13:02
Спасибо sendevent! Попробую сам собрать. Не подскажете, есть ли какие-нибудь особенности в сборке qt под windows с использованием майкрософтского компилятора? Прсто до этого у меня опыт разработки в основном под Linux :)


Название: Re: Ошибка при компиляции
Отправлено: sendevent от Декабрь 12, 2009, 16:23
основное отличие в том, что привычный ./configure - это бинарник :)
когда определишься с необходимыми параметрами конфигурации - удобно заюзать батник:
Код:
@echo off
set startTime=%time%
nmake distclean
configure -platform win32-msvc2005 -opensource -debug-and-release -no-qt3support -qt-zlib -qt-gif -qt-libpng -no-libmng -qt-libtiff -qt-libjpeg -mmx -3dnow -sse -sse2 -openssl-linked -no-phonon -webkit -qt-style-plastique -qt-style-windows -qt-style-windowsxp -qt-style-windowsvista -qt-style-cleanlooks -qt-style-motif -no-style-cde -no-style-windowsce -no-style-windowsmobile -I c:/openssl/include -I c:/openssl/include/openssl -L c:/openssl/lib -nomake demos -nomake examples
nmake
set finishTime=%time%
echo started at: %startTime%, finished at: %finishTime%
командный интерпретатор - используй либо VisualStudio 2005 Command Prompt либо Qt 4.6.0 Command Prompt, но не cmd. вообще, процесс довольно подробно разжеван (http://doc.trolltech.com/4.6/install-win.html), в том числе, и на этом форуме.
(забавно, сейчас как раз пытаюсь собрать на ноуте - не хочет... на стационарке собралась без проблем).