Название: [Решено] MinGw 64 + Qt + Postgres + Windows 64 Отправлено: Termit от Июль 09, 2012, 12:43 Всем привет!
Не получается хоть ты тресни подгрузить плагин postgresql под Windows. Пытался на Windows 7 x64, Windows Server R2 x64. Суть вопроса: Имею Qt собранную mingw64, собранную с плагином postgresql. Только вот плагин не хочет подгружаться :(. Если смотреть Dependency Walker, то есть один варнинг на IEFRAME.DLL Код: Warning: At least one module has an unresolved import due to a missing export function in a delay-load dependent module. При этом путь по зависимостям до этой IEFRAME.DLL выглядит так: Код: EXCHANGE.DLL -> QTCORE4.DLL -> USER32.DLL -> POWRPROF.DLL -> SETUPAPI.DLL -> SHELL32.DLL -> SHDOCVW.DLL -> IEFRAME.DLL Кто-нить знает что это за ерунда и как её победить? Название: Re: MinGw 64 + Qt + Postgres + Windows 64 Отправлено: Serr500 от Июль 09, 2012, 16:20 А что пишет плагин, который не хочет подгружаться? ИМХО, бинарник либу постгреса не видит.
Название: Re: MinGw 64 + Qt + Postgres + Windows 64 Отправлено: Whiplash от Июль 09, 2012, 16:39 М.б. либа постгреса не 64, 32-битная подсунута?
Название: Re: MinGw 64 + Qt + Postgres + Windows 64 Отправлено: Termit от Июль 09, 2012, 18:41 А что пишет плагин, который не хочет подгружаться? ИМХО, бинарник либу постгреса не видит. Видит, проверял все Dependency Walker, при этом либа лежит в той же папке. Название: Re: MinGw 64 + Qt + Postgres + Windows 64 Отправлено: Termit от Июль 09, 2012, 18:43 М.б. либа постгреса не 64, 32-битная подсунута? 100% 64 бита. Название: Re: MinGw 64 + Qt + Postgres + Windows 64 Отправлено: Serr500 от Июль 09, 2012, 18:46 А ей, вроде, ещё OpenSSL-библиотеки нужны - libeay и ssleay.
Название: Re: MinGw 64 + Qt + Postgres + Windows 64 Отправлено: Termit от Июль 09, 2012, 18:47 А ей, вроде, ещё OpenSSL-библиотеки нужны - libeay и ssleay. Да, нужны и они есть.... Могу выложить все библиотеки и бинарик либо сюда, либо куда-нить еще.... Если нужно только скажите... Название: Re: MinGw 64 + Qt + Postgres + Windows 64 Отправлено: Termit от Июль 09, 2012, 19:14 Либо если у кого есть рабочая 64 битная сборка Qt под Windows 64 с плагином postgres выложите где-нить. Мне этого будет достаточно.
Название: Re: MinGw 64 + Qt + Postgres + Windows 64 Отправлено: Serr500 от Июль 09, 2012, 20:56 Посмотрел на зависимости библиотек скомпиленной версии postgresql-9.1.4-1-windows-x64-binaries. Там ещё требуется пакет Microsoft Visual C++ 2008 (x64) (http://www.microsoft.com/ru-ru/download/details.aspx?id=15336 (http://www.microsoft.com/ru-ru/download/details.aspx?id=15336)).
Название: Re: MinGw 64 + Qt + Postgres + Windows 64 Отправлено: Termit от Июль 09, 2012, 22:26 Посмотрел на зависимости библиотек скомпиленной версии postgresql-9.1.4-1-windows-x64-binaries. Там ещё требуется пакет Microsoft Visual C++ 2008 (x64) (http://www.microsoft.com/ru-ru/download/details.aspx?id=15336 (http://www.microsoft.com/ru-ru/download/details.aspx?id=15336)). Есть и это... Вот список файлов Код: sqldrivers/qsqlpsql4.dll Dependency Walker показывает, что с зависимостями все хорошо кроме IEFRAME.DLL Название: Re: MinGw 64 + Qt + Postgres + Windows 64 Отправлено: Serr500 от Июль 10, 2012, 08:06 msvcr90.dll просто копировать в папку программы нельзя, не увидит. Нужно устанавливать в систему пакет Microsoft Visual C++ 2008 (x64), либо мудрить с манифестами.
Dependency Walker показывает, что с зависимостями все хорошо кроме IEFRAME.DLL Да забудьте Вы про этот IEFrame! Dependency Walker часто всякую хрень пишет.Название: Re: MinGw 64 + Qt + Postgres + Windows 64 Отправлено: Termit от Июль 10, 2012, 11:50 msvcr90.dll просто копировать в папку программы нельзя, не увидит. Нужно устанавливать в систему пакет Microsoft Visual C++ 2008 (x64), либо мудрить с манифестами. Вот что стоит на одной машине. (см. вложение) На другой стоит студия 2008. Не помогает :( Название: Re: MinGw 64 + Qt + Postgres + Windows 64 Отправлено: Termit от Июль 10, 2012, 13:02 Господа, ну не поверю, что ни у кого нет 64 битной сборки Qt под винду и нет плагина postgresql.
Проверьте плиз работоспособность. Может я вообще зря пытаюсь что-нить выдумать, скажем в 64 битной сборке вообще этот плагин не работает. Название: Re: MinGw 64 + Qt + Postgres + Windows 64 Отправлено: Serr500 от Июль 10, 2012, 13:05 Я пас. Не знаю в чём дело. Может, Qt криво собралась, всё-таки этот компилер она официально, вроде, не поддерживает.
P.S. У меня нет 64-битной сборки. Давно хочу скомпилять, но пока руки не доходят. Название: Re: MinGw 64 + Qt + Postgres + Windows 64 Отправлено: Termit от Июль 10, 2012, 13:37 Я пас. Не знаю в чём дело. Может, Qt криво собралась, всё-таки этот компилер она официально, вроде, не поддерживает. P.S. У меня нет 64-битной сборки. Давно хочу скомпилять, но пока руки не доходят. Даже не знаю как проверить кривость сборки Qt, все работает и компилируется и всякие "Hello world" и examples-ы тоже, вот только подстава с плагином. У меня как раз дошли... Название: Re: MinGw 64 + Qt + Postgres + Windows 64 Отправлено: Termit от Июль 10, 2012, 13:42 Кстати о примерах. Чисто случайно вспомнил, что есть такое дело как sqlbrowser.
У меня на машине скомпилено 4 версии Qt 32-х и 64-х битные mingw и nmake. Так вот, после того как в переменную path занес только нужные каталоги 64-х битные версии и mingw и nmake увидели драйвер postgres... Прямо сейчас буду проверять свое приложение, но уже ясно, что это я где-то натупил :( Будем считать, что мой вопрос закрыт, дальше дело техники заставить его правильно работать. Название: Re: MinGw 64 + Qt + Postgres + Windows 64 Отправлено: trot от Июль 10, 2012, 16:18 Даю плагин.
Название: Re: [Решено] MinGw 64 + Qt + Postgres + Windows 64 Отправлено: Termit от Июль 10, 2012, 16:29 Вся загвоздка была в переменной PATH.
Пропустил один символ "\". :-\ |