Название: [4.5.0] Ошибка при статической сборке (сбивается на QtWebKit.lib) Отправлено: vipet от Март 04, 2009, 08:26 Qt 4.5.0 релиз
MS VS 2008 +SP1 Windows SDK 6.0, 6.1 Опции сборки Qt: Код: -release nmake стопорится на: ..\..\..\..\lib\QtWebKit.lib : fatal error LNK1106: invalid file or disk full: cannot seek to 0x48E9BA97 Код: ... У кого-нибудь 4.5.0 релиз статически собрался вместе с вебкитом? P.S. Динамический билд с теми же опциями собирается отлично. Название: Re: [4.5.0] Ошибка при статической сборке (сбивается на QtWebKit.lib) Отправлено: LestorN от Март 04, 2009, 08:30 ..\..\..\..\lib\QtWebKit.lib : fatal error LNK1106: invalid file or disk full: c
annot seek to 0x48E9BA97 На диске место точно есть? Название: Re: [4.5.0] Ошибка при статической сборке (сбивается на QtWebKit.lib) Отправлено: BRE от Март 04, 2009, 08:32 nmake стопорится на: А место на диске много?..\..\..\..\lib\QtWebKit.lib : fatal error LNK1106: invalid file or disk full: cannot seek to 0x48E9BA97 Афигеть, QtWebKit.lib под 1,2 Гб. Название: Re: [4.5.0] Ошибка при статической сборке (сбивается на QtWebKit.lib) Отправлено: vipet от Март 04, 2009, 12:23 На диске еще 20 гигов свободно.
(RAM 4 гига, на диске, где файл подкачки и temp тоже полно места) Читал, что workaround'ом может быть опция линкера IGNOREIDL, пока не знаю куда сувать ее Название: Re: [4.5.0] Ошибка при статической сборке (сбивается на QtWebKit.lib) Отправлено: vipet от Март 04, 2009, 12:44 на всякий случай сделал свободными 40 гигов - не помогло
Название: Re: [4.5.0] Ошибка при статической сборке (сбивается на QtWebKit.lib) Отправлено: vipet от Март 04, 2009, 14:46 вобщем проблема остается при статической сборке и с минимальным набором опций.
Вопрос тот же: У кого-нибудь статически собралась Qt 4.5.0 (релиз) с вебкитом? Если да, то какой компилятор (и опции)? Название: Re: [4.5.0] Ошибка при статической сборке (сбивается на QtWebKit.lib) Отправлено: Dimyan от Март 09, 2009, 15:26 Статическая установка qt-win-commercial-src-4.5.0
------------------------------------------------------------------------------------------------------ 1) Переменные окружения установить: QtDir = C:\Qt\4.5.0 PATH = PATH+=%QTDIR%\bin ----------------------------------------------------------------------------------------------------- 2) Изменить файл C:\Qt\4.5.0\mkspecs\win32-msvc2008\qmake.conf: До QMAKE_CFLAGS_RELEASE = -O2 -MD -GL QMAKE_CFLAGS_DEBUG = -Zi -MDd После, с оптимизацией QMAKE_CFLAGS_RELEASE = -O2 -MT -GL QMAKE_CFLAGS_DEBUG = -Zi -MTd Или, без оптимизации QMAKE_CFLAGS_RELEASE = -O2 -MT QMAKE_CFLAGS_DEBUG = -Zi -MTd ------------------------------------------------------------------------------------------------------ 3) Изменить файлы "C:\Qt\4.5.0\mkspecs\features\win32\embed_manifest_dll.prf" и "C:\Qt\4.5.0\mkspecs\features\win32\embed_manifest_exe.prf": До QMAKE_POST_LINK = $$quote(mt.exe -nologo -manifest \"$$replace(OBJECTS_DIR,/,\\)\\$${NOPATH_TARGET}.intermediate.manifest\" -outputresource:$(DESTDIR_TARGET);2$$escape_expand(\n\t)) После QMAKE_POST_LINK = $$quote(@if exist \"$$replace(OBJECTS_DIR,/,\\)\\$${NOPATH_TARGET}.intermediate.manifest\" mt.exe -nologo -manifest \"$$replace(OBJECTS_DIR,/,\\)\\$${NOPATH_TARGET}.intermediate.manifest\" -outputresource:$(DESTDIR_TARGET);2$$escape_expand(\n\t)) ------------------------------------------------------------------------------------------------------ 4) Из "Visual Studio 2008 Command Prompt" запустить: C: cd Qt\4.5.0 configure -static -platform win32-msvc2008 -qt-zlib -qt-gif -qt-libpng -qt-libmng -qt-libtiff -qt-libjpeg -qt-sql-sqlite ...... ------------------------------------------------------------------------------------------------------ 5) Если в файле C:\Qt\4.5.0\mkspecs\win32-msvc2008\qmake.conf была включена оптимизация (-GL), то изменить следующие файлы: "С:\Qt\4.5.0.vs2008.static\src\phonon\Makefile.Release" До CFLAGS = -nologo -Zm200 -Zc:wchar_t- -O2 -MT -GL -W3 $(DEFINES) CXXFLAGS = -nologo -Zm200 -Zc:wchar_t- -O2 -MT -GL -W3 -w34100 -w34189 -GR -EHsc $(DEFINES) После CFLAGS = -nologo -Zm200 -Zc:wchar_t- -O2 -MT -W3 $(DEFINES) CXXFLAGS = -nologo -Zm200 -Zc:wchar_t- -O2 -MT -W3 -w34100 -w34189 -GR -EHsc $(DEFINES) И файл "С:\Qt\4.5.0.vs2008.static\src\3rdparty\webkit\WebCore\Makefile.Release": До CFLAGS = -nologo -Zm200 -Zc:wchar_t- -O2 -MT -GL $(DEFINES) CXXFLAGS = -nologo -Zm200 -Zc:wchar_t- -O2 -MT -GL -GR -EHsc $(DEFINES) После CFLAGS = -nologo -Zm200 -Zc:wchar_t- -O2 -MT $(DEFINES) CXXFLAGS = -nologo -Zm200 -Zc:wchar_t- -O2 -MT -GR -EHsc $(DEFINES) ------------------------------------------------------------------------------------------------------ 6) Из "Visual Studio 2008 Command Prompt" запустить: nmake sub-src Название: Re: [4.5.0] Ошибка при статической сборке (сбивается на QtWebKit.lib) Отправлено: vipet от Март 09, 2009, 15:38 Dimyan,
Спасибо за подробные инструкции. Сейчас попробую. А вообще насчет статической сборки с вебкитом - баг подтвердили и была создана таска 247431: http://www.qtsoftware.com/developer/task-tracker/index_html?id=247431&method=entry Priority: 1 - Highest Scheduled for: 4.5.1 Название: Re: [4.5.0] Ошибка при статической сборке (сбивается на QtWebKit.lib) Отправлено: vipet от Март 10, 2009, 11:21 Да, убрав опцию -GL из Makefile'ов всё собралось!
Название: Re: [4.5.0] Ошибка при статической сборке (сбивается на QtWebKit.lib) Отправлено: Spicos от Март 11, 2009, 09:58 MSVC 2008EE RUS SP1
PlatformSDK_Svr2003R2 DXSDK_Nov08 Тока не работает.)) Из D:\Qt\4.5.0\examples\phonon\musicplayer\ 1>------ Построение начато: проект: musicplayer, Конфигурация: Release Win32 ------ 1>MOC mainwindow.h 1>Компиляция... 1>moc_mainwindow.cpp 1>mainwindow.cpp 1>main.cpp 1>Создание кода... 1>Компоновка... 1> Создается библиотека release\musicplayer.lib и объект release\musicplayer.exp 1>main.obj : warning LNK4217: локально определенный символ ??1MediaSource@Phonon@@QAE@XZ (public: __thiscall Phonon::MediaSource::~MediaSource(void)) импортирован в функцию "public: void * __thiscall Phonon::MediaSource::`scalar deleting destructor'(unsigned int)" (??_GMediaSource@Phonon@@QAEPAXI@Z) 1>mainwindow.obj : warning LNK4049: импортирован локально определенный символ ??1MediaSource@Phonon@@QAE@XZ (public: __thiscall Phonon::MediaSource::~MediaSource(void)) 1>mainwindow.obj : warning LNK4217: локально определенный символ ??0MediaSource@Phonon@@QAE@ABV01@@Z (public: __thiscall Phonon::MediaSource::MediaSource(class Phonon::MediaSource const &)) импортирован в функцию "private: void __thiscall QList<class Phonon::MediaSource>::node_construct(struct QList<class Phonon::MediaSource>::Node *,class Phonon::MediaSource const &)" (?node_construct@?$QList@VMediaSource@Phonon@@@@AAEXPAUNode@1@ABVMediaSource@Phonon@@@Z) 1>mainwindow.obj : warning LNK4217: локально определенный символ ?errorString@MediaObject@Phonon@@QBE?AVQString@@XZ (public: class QString __thiscall Phonon::MediaObject::errorString(void)const ) импортирован в функцию "private: void __thiscall MainWindow::stateChanged(enum Phonon::State,enum Phonon::State)" (?stateChanged@MainWindow@@AAEXW4State@Phonon@@0@Z) 1>mainwindow.obj : warning LNK4217: локально определенный символ ?errorType@MediaObject@Phonon@@QBE?AW4ErrorType@2@XZ (public: enum Phonon::ErrorType __thiscall Phonon::MediaObject::errorType(void)const ) импортирован в функцию "private: void __thiscall MainWindow::stateChanged(enum Phonon::State,enum Phonon::State)" (?stateChanged@MainWindow@@AAEXW4State@Phonon@@0@Z) 1>mainwindow.obj : warning LNK4217: локально определенный символ ??8MediaSource@Phonon@@QBE_NABV01@@Z (public: bool __thiscall Phonon::MediaSource::operator==(class Phonon::MediaSource const &)const ) импортирован в функцию "public: int __thiscall QList<class Phonon::MediaSource>::indexOf(class Phonon::MediaSource const &,int)const " (?indexOf@?$QList@VMediaSource@Phonon@@@@QBEHABVMediaSource@Phonon@@H@Z) 1>mainwindow.obj : warning LNK4217: локально определенный символ ?enqueue@MediaObject@Phonon@@QAEXABVMediaSource@2@@Z (public: void __thiscall Phonon::MediaObject::enqueue(class Phonon::MediaSource const &)) импортирован в функцию "private: void __thiscall MainWindow::aboutToFinish(void)" (?aboutToFinish@MainWindow@@AAEXXZ) 1>mainwindow.obj : warning LNK4217: локально определенный символ ?currentSource@MediaObject@Phonon@@QBE?AVMediaSource@2@XZ (public: class Phonon::MediaSource __thiscall Phonon::MediaObject::currentSource(void)const ) импортирован в функцию "private: void __thiscall MainWindow::aboutToFinish(void)" (?aboutToFinish@MainWindow@@AAEXXZ) 1>mainwindow.obj : warning LNK4217: локально определенный символ ?setAudioOutput@VolumeSlider@Phonon@@QAEXPAVAudioOutput@2@@Z (public: void __thiscall Phonon::VolumeSlider::setAudioOutput(class Phonon::AudioOutput *)) импортирован в функцию "private: void __thiscall MainWindow::setupUi(void)" (?setupUi@MainWindow@@AAEXXZ) 1>mainwindow.obj : warning LNK4217: локально определенный символ ??0VolumeSlider@Phonon@@QAE@PAVQWidget@@@Z (public: __thiscall Phonon::VolumeSlider::VolumeSlider(class QWidget *)) импортирован в функцию "private: void __thiscall MainWindow::setupUi(void)" (?setupUi@MainWindow@@AAEXXZ) 1>mainwindow.obj : warning LNK4217: локально определенный символ ?setMediaObject@SeekSlider@Phonon@@QAEXPAVMediaObject@2@@Z (public: void __thiscall Phonon::SeekSlider::setMediaObject(class Phonon::MediaObject *)) импортирован в функцию "private: void __thiscall MainWindow::setupUi(void)" (?setupUi@MainWindow@@AAEXXZ) 1>mainwindow.obj : warning LNK4217: локально определенный символ ??0SeekSlider@Phonon@@QAE@PAVQWidget@@@Z (public: __thiscall Phonon::SeekSlider::SeekSlider(class QWidget *)) импортирован в функцию "private: void __thiscall MainWindow::setupUi(void)" (?setupUi@MainWindow@@AAEXXZ) 1>mainwindow.obj : warning LNK4217: локально определенный символ ??1SeekSlider@Phonon@@UAE@XZ (public: virtual __thiscall Phonon::SeekSlider::~SeekSlider(void)) импортирован в функцию "public: virtual void * __thiscall Phonon::SeekSlider::`scalar deleting destructor'(unsigned int)" (??_GSeekSlider@Phonon@@UAEPAXI@Z) 1>mainwindow.obj : warning LNK4217: локально определенный символ ??1VolumeSlider@Phonon@@UAE@XZ (public: virtual __thiscall Phonon::VolumeSlider::~VolumeSlider(void)) импортирован в функцию "public: virtual void * __thiscall Phonon::VolumeSlider::`scalar deleting destructor'(unsigned int)" (??_GVolumeSlider@Phonon@@UAEPAXI@Z) 1>mainwindow.obj : warning LNK4217: локально определенный символ ??1Path@Phonon@@QAE@XZ (public: __thiscall Phonon::Path::~Path(void)) импортирован в функцию "public: __thiscall MainWindow::MainWindow(void)" (??0MainWindow@@QAE@XZ) 1>mainwindow.obj : warning LNK4217: локально определенный символ ?createPath@Phonon@@YA?AVPath@1@PAVMediaNode@1@0@Z (class Phonon::Path __cdecl Phonon::createPath(class Phonon::MediaNode *,class Phonon::MediaNode *)) импортирован в функцию "public: __thiscall MainWindow::MainWindow(void)" (??0MainWindow@@QAE@XZ) 1>mainwindow.obj : warning LNK4217: локально определенный символ ?setTickInterval@MediaObject@Phonon@@QAEXH@Z (public: void __thiscall Phonon::MediaObject::setTickInterval(int)) импортирован в функцию "public: __thiscall MainWindow::MainWindow(void)" (??0MainWindow@@QAE@XZ) 1>mainwindow.obj : warning LNK4217: локально определенный символ ??0MediaObject@Phonon@@QAE@PAVQObject@@@Z (public: __thiscall Phonon::MediaObject::MediaObject(class QObject *)) импортирован в функцию "public: __thiscall MainWindow::MainWindow(void)" (??0MainWindow@@QAE@XZ) 1>mainwindow.obj : warning LNK4217: локально определенный символ ??0AudioOutput@Phonon@@QAE@W4Category@1@PAVQObject@@@Z (public: __thiscall Phonon::AudioOutput::AudioOutput(enum Phonon::Category,class QObject *)) импортирован в функцию "public: __thiscall MainWindow::MainWindow(void)" (??0MainWindow@@QAE@XZ) 1>mainwindow.obj : warning LNK4217: локально определенный символ ??1AbstractAudioOutput@Phonon@@UAE@XZ (public: virtual __thiscall Phonon::AbstractAudioOutput::~AbstractAudioOutput(void)) импортирован в функцию "public: virtual void * __thiscall Phonon::AudioOutput::`scalar deleting destructor'(unsigned int)" (??_GAudioOutput@Phonon@@UAEPAXI@Z) 1>mainwindow.obj : warning LNK4217: локально определенный символ ??1MediaObject@Phonon@@UAE@XZ (public: virtual __thiscall Phonon::MediaObject::~MediaObject(void)) импортирован в функцию "public: virtual void * __thiscall Phonon::MediaObject::`scalar deleting destructor'(unsigned int)" (??_GMediaObject@Phonon@@UAEPAXI@Z) 1>mainwindow.obj : warning LNK4217: локально определенный символ ?setCurrentSource@MediaObject@Phonon@@QAEXABVMediaSource@2@@Z (public: void __thiscall Phonon::MediaObject::setCurrentSource(class Phonon::MediaSource const &)) импортирован в функцию "private: void __thiscall MainWindow::addFiles(void)" (?addFiles@MainWindow@@AAEXXZ) 1>mainwindow.obj : warning LNK4217: локально определенный символ ??0MediaSource@Phonon@@QAE@ABVQString@@@Z (public: __thiscall Phonon::MediaSource::MediaSource(class QString const &)) импортирован в функцию "private: void __thiscall MainWindow::addFiles(void)" (?addFiles@MainWindow@@AAEXXZ) 1>mainwindow.obj : warning LNK4217: локально определенный символ ?play@MediaObject@Phonon@@QAEXXZ (public: void __thiscall Phonon::MediaObject::play(void)) импортирован в функцию "private: void __thiscall MainWindow::tableClicked(int,int)" (?tableClicked@MainWindow@@AAEXHH@Z) 1>mainwindow.obj : warning LNK4217: локально определенный символ ?clearQueue@MediaObject@Phonon@@QAEXXZ (public: void __thiscall Phonon::MediaObject::clearQueue(void)) импортирован в функцию "private: void __thiscall MainWindow::tableClicked(int,int)" (?tableClicked@MainWindow@@AAEXHH@Z) 1>mainwindow.obj : warning LNK4217: локально определенный символ ?stop@MediaObject@Phonon@@QAEXXZ (public: void __thiscall Phonon::MediaObject::stop(void)) импортирован в функцию "private: void __thiscall MainWindow::tableClicked(int,int)" (?tableClicked@MainWindow@@AAEXHH@Z) 1>mainwindow.obj : warning LNK4217: локально определенный символ ?state@MediaObject@Phonon@@QBE?AW4State@2@XZ (public: enum Phonon::State __thiscall Phonon::MediaObject::state(void)const ) импортирован в функцию "private: void __thiscall MainWindow::tableClicked(int,int)" (?tableClicked@MainWindow@@AAEXHH@Z) 1>mainwindow.obj : warning LNK4217: локально определенный символ ?fileName@MediaSource@Phonon@@QBE?AVQString@@XZ (public: class QString __thiscall Phonon::MediaSource::fileName(void)const ) импортирован в функцию "private: void __thiscall MainWindow::metaStateChanged(enum Phonon::State,enum Phonon::State)" (?metaStateChanged@MainWindow@@AAEXW4State@Phonon@@0@Z) 1>mainwindow.obj : warning LNK4217: локально определенный символ ?metaData@MediaObject@Phonon@@QBE?AV?$QMultiMap@VQString@@V1@@@XZ (public: class QMultiMap<class QString,class QString> __thiscall Phonon::MediaObject::metaData(void)const ) импортирован в функцию "private: void __thiscall MainWindow::metaStateChanged(enum Phonon::State,enum Phonon::State)" (?metaStateChanged@MainWindow@@AAEXW4State@Phonon@@0@Z) 1>mainwindow.obj : warning LNK4217: локально определенный символ ?type@MediaSource@Phonon@@QBE?AW4Type@12@XZ (public: enum Phonon::MediaSource::Type __thiscall Phonon::MediaSource::type(void)const ) импортирован в функцию "private: void __thiscall MainWindow::metaStateChanged(enum Phonon::State,enum Phonon::State)" (?metaStateChanged@MainWindow@@AAEXW4State@Phonon@@0@Z) 1>Внедрение манифеста... 1>Журнал построения был сохранен в "file://d:\Qt\4.5.0\examples\phonon\musicplayer\tmp\obj\release_static\BuildLog.htm" 1>musicplayer - ошибок 0, предупреждений 30 ========== Построение: успешно: 1, с ошибками: 0, без изменений: 0, пропущено: 0 ========== Запускается, тока файлы не добавляет соответсвенно и не проигрывает. Название: Re: [4.5.0] Ошибка при статической сборке (сбивается на QtWebKit.lib) Отправлено: IGHOR от Март 14, 2009, 03:41 Спасибо за пост! И мне помогло
|