bob
Гость
|
|
« : Октябрь 26, 2005, 17:54 » |
|
Объявляю #include <QSqlDatabase>, компилирую и получаю сообщение "No such file or directory". Ессесьно проверил наличие файла. Разумеется есть. В чем может быть проблема?
|
|
|
Записан
|
|
|
|
nEoN
Гость
|
|
« Ответ #1 : Октябрь 26, 2005, 20:15 » |
|
В файл проекта надо добавить строчку : QT += sql
|
|
|
Записан
|
|
|
|
KADABRA
Гость
|
|
« Ответ #2 : Октябрь 26, 2005, 20:21 » |
|
Объявляю #include <QSqlDatabase>, компилирую и получаю сообщение "No such file or directory". Ессесьно проверил наличие файла. Разумеется есть. В чем может быть проблема? Попробуй #include <QtSql/QSqlDatabase>
|
|
|
Записан
|
|
|
|
AlexKiriukha
Гость
|
|
« Ответ #3 : Октябрь 26, 2005, 22:14 » |
|
Все таки правильнее будет QT += sql. Это добавит пути поиска для INCLUDE и прилинкует libQtSql.
|
|
|
Записан
|
|
|
|
bob
Гость
|
|
« Ответ #4 : Октябрь 26, 2005, 22:45 » |
|
QT += sql помогло, но следующая проблема QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL"); db.setHostName("localhost"); db.setDatabaseName("test"); db.setUserName("root"); db.setPassword("578010"); bool ok = db.open();
Не могу открыть БД. Постоянно ok == false.
|
|
|
Записан
|
|
|
|
nEoN
Гость
|
|
« Ответ #5 : Октябрь 27, 2005, 08:19 » |
|
Посмотри какая ошибка возвращается при попытке открытия БД :
|
|
|
Записан
|
|
|
|
bob
Гость
|
|
« Ответ #6 : Октябрь 27, 2005, 09:26 » |
|
db.lastError() пишет "Driver Not Loaded". При попытке выполнить сборку плагина (согласно Assistance) cd %QTDIR%\src\plugins\sqldrivers\mysql qmake -o Makefile "INCLUDEPATH+=C:\MYSQL\INCLUDE" "LIBS+=C:\MYSQL\LIB\OPT\LIBMYSQL.LIB" mysql.pro mingw32-make
Сообщает, что не найден файл lmysql.lib. Если выполняю configure.exe -release -qt-sql-mysql то в процессе перекомпиляции сообщает: qsql_mysql.h:34:19: mysql.h no such file or directory. qsql_mysql.h:82 error:Expected ')' before '*' token.Тоже самое получаю если согласно примера указываю #include "C:/Qt/4.0.1/src/sql/drivers/mysql/qsql_mysql.cpp"
|
|
|
Записан
|
|
|
|
AlexKiriukha
Гость
|
|
« Ответ #7 : Октябрь 27, 2005, 09:36 » |
|
А комрилятор какой? Его версия? Версия компилятора? ОС?
|
|
|
Записан
|
|
|
|
Admin
|
|
« Ответ #8 : Октябрь 27, 2005, 09:45 » |
|
явно пишет что не находит headers от mysql
ты дожен в INCLUDES прописать путь к заголовочным файлам от mysql что бы qt c ними слинковался
|
|
|
Записан
|
|
|
|
bob
Гость
|
|
« Ответ #9 : Октябрь 27, 2005, 09:59 » |
|
Компиляю MinGW-3.4.2.
Как првильно системные переменный должны называться? INCLUDE LIB
INCLUDES LIBS
INCLUDEPATH LIBPATH
|
|
|
Записан
|
|
|
|
nEoN
Гость
|
|
« Ответ #10 : Октябрь 27, 2005, 10:13 » |
|
Попробуй в файл своего проекта (.pro) добавить : INCLUDEPATH += C:\MYSQL\INCLUDE После этого компилятор должен найти mysql.h.
|
|
|
Записан
|
|
|
|
bob
Гость
|
|
« Ответ #11 : Октябрь 27, 2005, 10:28 » |
|
Объявил системный переменные INCLUDES и LIBS. Прописал: INCLUDES = C:\MySQL\include LIBS = C:\MySQL\lib\optТеперь при сборке после cd %QTDIR%\src\plugins\sqldrivers\mysql qmake -o Makefile "INCLUDEPATH+=C:\MYSQL\INCLUDE" "LIBS+=C:\MYSQL\LIB\OPT\LIBMYSQL.LIB" mysql.pro mingw32-make сообщает, что нет файла qsqlmysql.dll. Его действиетльно нет, но если он так нужен, то где его можно взять?
|
|
|
Записан
|
|
|
|
bob
Гость
|
|
« Ответ #12 : Октябрь 27, 2005, 11:36 » |
|
Написал лажу не находит -lmysql.lib и поэтому не создает qsqlmysql.dll.
|
|
|
Записан
|
|
|
|
Admin
|
|
« Ответ #13 : Октябрь 27, 2005, 16:16 » |
|
таки это же либа от mysql
подсунь ее
|
|
|
Записан
|
|
|
|
bob
Гость
|
|
« Ответ #14 : Октябрь 27, 2005, 16:25 » |
|
Подсуну. Скажи куда именно.
|
|
|
Записан
|
|
|
|
|