Russian Qt Forum

Qt => Базы данных => Тема начата: kai666_73 от Май 30, 2014, 12:28



Название: [Решено] QLINTER driver not loaded
Отправлено: kai666_73 от Май 30, 2014, 12:28
Суть проблемы:
Ось: Win7 (x64)
Qt: 4.8.6 (Mingw)
Установлен Линтер версии 6.0.15...

Собран линтеровский драйвер из исходников и скопирован в соотв. папку (plugins/sqldrivers)
Но при попытке установить соединение в тестовом приложении получаем сабж.

Если кто-нибудь уже бодался с этой проблемой и может что-нибудь посоветовать... был бы весьма признателен.


Название: Re: QLINTER driver not loaded
Отправлено: lesav от Май 31, 2014, 08:06
Ооо!  Привет Воронежу!   
Линтер - Отличная БД.   Лет пять назад был влюблен в нее (работал с ней в среде QNX6).

Признаюсь, что с тех пор много воды утекло, и по долгу службы пришлось пересесть на Oracle и Firebird. 
Но то воодушевление, при работе с Линтером, не забуду.


А клиентская библиотека находиться в %PATH%  ?

Нужно посмотреть зависимости линтеровского драйвера от других библиотек
В unix это делается утилитой ldd
В Windows   dependencywalker (http://dependencywalker.com/)-ом 

Если чего не находит в PATH, положить рядом со своим прилождением


Название: Re: QLINTER driver not loaded
Отправлено: kai666_73 от Июнь 01, 2014, 11:28
Линтеровский bin в путях, разумеется, прописан (в начало).
А вот depencewalker выявляет интересную зависимость lapi32.dll от MS-runtime, при этом хочет именно C:\windows\system32\msvcrt.dll...
и находит его там, но версия системного msvcrt.dll отличается от msvcrt.dll поставляемого линтером.

Думается проблема в этом и заключается.
Непонятны два момента:
- можно ли вообще собирать плагин мингвой
- можно ли собрать плагин под VC с версией больше 6.0


Название: Re: QLINTER driver not loaded
Отправлено: lesav от Июнь 01, 2014, 17:51
Непонятны два момента:
- можно ли вообще собирать плагин мингвой
- можно ли собрать плагин под VC с версией больше 6.0
Если есть исходники то почему бы и нет ?

А где лежит линтеровский драйвер относительно приложения ?


Название: Re: QLINTER driver not loaded
Отправлено: kai666_73 от Июнь 02, 2014, 11:05
Если есть исходники то почему бы и нет ?
Потому-что кроме исходников есть еще и линтеровские либы, собранные, походу, не шибко грамотно.
Пробовал собирать для msvc2008 - ошибка: нету LIBC.LIB
Пробовал собирать для mingw - успешно, но модуль не грузится - ошибка (в тестовом проекте с дефайном QT_DEBUG_PLUGINS): не удалось загрузить библиотеку


Название: Re: QLINTER driver not loaded
Отправлено: lesav от Июнь 02, 2014, 15:08
Потому-что кроме исходников есть еще и линтеровские либы, собранные, походу, не шибко грамотно.
Давай исходники, я попробую.  Высылай на Lesandv gmail com


Название: Re: QLINTER driver not loaded
Отправлено: kai666_73 от Июнь 03, 2014, 10:07
Давай исходники, я попробую.  Высылай на Lesandv gmail com
Выслал...


Название: Re: QLINTER driver not loaded
Отправлено: lesav от Июнь 03, 2014, 16:25
Еще мне нужен каталог с либами  Linter\intlib


Название: Re: QLINTER driver not loaded
Отправлено: kai666_73 от Июнь 03, 2014, 16:37
Еще мне нужен каталог с либами  Linter\intlib

Выслал...

Как бы то ни было, проблема для mingw решается откатом на более раннюю версию.


Название: Re: [Решено] QLINTER driver not loaded
Отправлено: lesav от Июнь 04, 2014, 08:35
Как бы то ни было, проблема для mingw решается откатом на более раннюю версию.
Только не факт, что полученный драйвер загрузится.


У меня есть результат

Код:
Powered by Qt486-msvc2010
SQL plugin supported drivers: QFIREBIRD: QIBASE: QSQLITE: QLINTER: QMYSQL3: QMYSQL: QOCI8: QOCI: QODBC3: QODBC: QPSQL7: QPSQL

Драйвер загружается в
qt485_win32.x86_msvc2010
qt486_win32.x86_msvc2010
qt520_win32.x86_msvc2010
qt521_win32.x86_msvc2010
qt530_win32.x86_msvc2010

Коннект к БД не проверял

Linter600_linqt.7z (http://lesav.ru/prog.org.ru/Linter600_linqt.7z)


Название: Re: [Решено] QLINTER driver not loaded
Отправлено: kai666_73 от Июнь 04, 2014, 10:01
Только не факт, что полученный драйвер загрузится.

Проверено для MinGW.x86.441 - грузится, коннектица...