Поиск:

Ответ в темуСоздание новой темы Создание опроса
> QT 3.3 + MS VS 2005 - QMYSQL3 driver not loaded, некрофилийские извращения 
V
    Опции темы
cra
Дата 1.10.2009, 15:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 20.2.2009

Репутация: нет
Всего: нет



Вынужден использовать старую версию QT под виндой.

При сборке ругается:
Код

QSqlDatabase: QMYSQL3 driver not loaded
QSqlDatabase: available drivers:


Код:
Код

#include <QApplication.h>
#include <QSQLDataBase.h>
#include <QMessageBox.h>

void showLibs(QApplication& appl)
{
    QStringList::const_iterator constIterator;
    for (constIterator = appl.libraryPaths().constBegin(); 
        constIterator != appl.libraryPaths().constEnd(); 
        ++constIterator)
    {
        QMessageBox::information(NULL, "Library path", (*constIterator));
    }
}

int main( int argc, char **argv )
{
    QApplication app( argc, argv);
    app.addLibraryPath("C:/Distrib/3.3.3/plugins/sqldrivers");

    QSqlDatabase *defaultDB = QSqlDatabase::addDatabase( "QMYSQL3" );

    defaultDB->setDatabaseName( "db_test" );
    defaultDB->setUserName( "root" );
    defaultDB->setPassword( "god" );
    defaultDB->setHostName( "localhost" );

    showLibs(app);

    if ( !defaultDB->open() ) {
        defaultDB->lastError().showMessage();
        return 1;
    }

    // Database successfully opened;
    // we can now issue SQL commands.
    return 0;
}


QT 3.3.3 поставлено методом "перенесли папку и прописали пути", так что в этом тоже может быть косяк :-(
Хотя проект без подобных вещей собирается, то есть студия все нужные пути находит.

Драйвер к mysql пришлось собрать из исходников. Собирал так:
Код

C:\Distrib\3.3.3\plugins\src\sqldrivers\mysql>qmake -o Makefile "INCLUDEPATH+=C:\MySQL\include" "LIBS+=C:\MySQL\lib\opt\libmysql.lib" mysql.pro

C:\Distrib\3.3.3\plugins\src\sqldrivers\mysql>nmake


Код

C:\Distrib\3.3.3\plugins\src\sqldrivers\mysql>nmake

Microsoft (R) Program Maintenance Utility Version 8.00.50727.42
Copyright (C) Microsoft Corporation.  All rights reserved.

        link /NOLOGO /DELAYLOAD:comdlg32.dll /DELAYLOAD:oleaut32.dll /DELAYLOAD:winmm.dll /DELAYLOAD:wsock32.dll /DELAYL
OAD:winspool.dll /DELAYLOAD:opengl32.dll /SUBSYSTEM:WINDOWS /DLL /LIBPATH:"c:\Distrib\3.3.3\lib" /OUT:..\..\..\sqldriver
s\qsqlmysql.dll @C:\Temp\nmF2.tmp
   Creating library ..\..\..\sqldrivers\qsqlmysql.lib and object ..\..\..\sqldrivers\qsqlmysql.exp
LINK : warning LNK4199: /DELAYLOAD:comdlg32.dll ignored; no imports found from comdlg32.dll
LINK : warning LNK4199: /DELAYLOAD:oleaut32.dll ignored; no imports found from oleaut32.dll
LINK : warning LNK4199: /DELAYLOAD:winmm.dll ignored; no imports found from winmm.dll
LINK : warning LNK4199: /DELAYLOAD:wsock32.dll ignored; no imports found from wsock32.dll
LINK : warning LNK4199: /DELAYLOAD:winspool.dll ignored; no imports found from winspool.dll
LINK : warning LNK4199: /DELAYLOAD:opengl32.dll ignored; no imports found from opengl32.dll


Собственно, вопросы:
  •  чяднт?
  •  почему список драйверов пустой? (в папке с драйверами есть как минимум уже собранные db2, sqlite и odbc)
  •  как убедиться, что пути - верные?
  •  может, где-то есть скомпиленная под винду эта библиотека? Или если собрать qt с нуля компилёром от МС, будет работать?

PM MAIL WWW Jabber   Вверх
cra
Дата 13.10.2009, 16:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 20.2.2009

Репутация: нет
Всего: нет



Увы, проблема решилась только голой перестановкой винды, msvs2005, qt3.3.3 и пересборкой прямо из студии плагина.
PM MAIL WWW Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets"
JackYF
Любитель
  • В заголовке темы в квадратных скобках обозначьте используемую вами библиотеку, например: [QT],[GTK],[wx].
  • Если вопрос актуален только для некоторой версии библиотеки, либо, если вы пользуетесь не самой последней версией, укажите это. Например: [QT4], [GTK2].
  • Все начинающие изучать Qt - не забудьте зайти сюда.
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • В вопросе укажите полную версию версию библиотеки, а также все дополнительные используемые программные пакеты.
  • Не забывайте пользоваться кнопкой "Код".
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к тематике этого раздела. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема »


 




[ Время генерации скрипта: 0.0521 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.