Russian Qt Forum
Ноябрь 23, 2024, 07:57 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QT410rc1+MySQL5 не создается плагин  (Прочитано 4056 раз)
raven1976
Гость
« : Декабрь 16, 2005, 14:13 »

Ребята, у меня QT410rc1 и MySQL5016 (W2k)
не могу собрать плагин для MySQL
делаю согласно хелпа:

1. перехожу в папку G:\QT410rc1\src\plugins\sqldrivers\mysql

2. запускаю

qmake -o Makefile "INCLUDEPATH+=G:\MySQL5016\INCLUDE" "LIBS+=G:\MySQL5016\LIB\OPT\LIBMYSQL.LIB" mysql.pro

(после этого появляются файлы makefile, makefile.debug и makefile.release
и папка tmp с вложенными в нее moc\debug_shared, moc\release_shared, obj\debug_shared, и

obj\release_shared)

3. запускаю make (использую mingw32, который идет вместе с Dev-C++ 4.9.9.2)

это я вижу в окне cmd

Creating library file: G:\QT410rc1\plugins\sqldrivers\libqsqlmysql.a
tmp\obj\release_shared\qsql_mysql.o(.text+0x4c):qsql_mysql.cpp: undefined reference to

`mysql_character_set_name@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x184):qsql_mysql.cpp: undefined reference to `mysql_error@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x19a):qsql_mysql.cpp: undefined reference to `mysql_errno@4'
...
tmp\obj\release_shared\qsql_mysql.o(.text+0x69e4):qsql_mysql.cpp: undefined reference to

`mysql_stmt_bind_result@8'
tmp\obj\release_shared\qsql_mysql.o(.text+0x6e88):qsql_mysql.cpp: undefined reference to

`mysql_stmt_bind_param@8'
collect2: ld returned 1 exit status
mingw32-make[1]: *** [..\..\..\..\plugins\sqldrivers\qsqlmysql.dll] Error 1
mingw32-make: *** [release] Error 2

если запускаю make >log.txt
то в файле log.txt вижу такое

mingw32-make -f Makefile.Release
mingw32-make[1]: Entering directory `G:/QT410rc1/src/plugins/sqldrivers/mysql'
g++ -c -O2 -O2 -frtti -fexceptions -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_EDITION=QT_EDITION_DESKTOP

-DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_DLL -DQT_NO_DEBUG -DQT_PLUGIN -DQT_SQL_LIB

-DQT_CORE_LIB -DQT_THREAD_SUPPORT -I"G:/QT410rc1/include/QtCore" -I"G:/QT410rc1/include/QtSql"

-I"G:/QT410rc1/include" -I"G:/MySQL5016/include" -I"G:/QT410rc1/include/ActiveQt"

-I"tmp\moc\release_shared" -I"." -I"G:/QT410rc1/mkspecs/win32-g++" -o tmp\obj\release_shared\main.o

main.cpp
g++ -c -O2 -O2 -frtti -fexceptions -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_EDITION=QT_EDITION_DESKTOP

-DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_DLL -DQT_NO_DEBUG -DQT_PLUGIN -DQT_SQL_LIB

-DQT_CORE_LIB -DQT_THREAD_SUPPORT -I"G:/QT410rc1/include/QtCore" -I"G:/QT410rc1/include/QtSql"

-I"G:/QT410rc1/include" -I"G:/MySQL5016/include" -I"G:/QT410rc1/include/ActiveQt"

-I"tmp\moc\release_shared" -I"." -I"G:/QT410rc1/mkspecs/win32-g++" -o tmp\obj\release_shared\qsql_mysql.o

..\..\..\sql\drivers\mysql\qsql_mysql.cpp
g++ -mthreads -Wl,-enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -Wl,-s

-Wl,-s -shared -Wl,--out-implib,G:\QT410rc1\plugins\sqldrivers\libqsqlmysql.a -o

"..\..\..\..\plugins\sqldrivers\qsqlmysql.dll" tmp\obj\release_shared\main.o

tmp\obj\release_shared\qsql_mysql.o  -L"G:\QT410rc1\lib" -L"G:\QT410rc1\lib"

G:\MySQL5016\lib\opt\LIBMYSQL.LIB -llibmysql -lQtSql4 -lQtCore4
mingw32-make[1]: Leaving directory `G:/QT410rc1/src/plugins/sqldrivers/mysql'

и все, больше ничего в log.txt нет, а в окне cmd тот же результат, который я приводил

в obj\release_shared появляются 2 файла: main.o и qsql_mysql.o

в переменных среды у меня:

PATH      ... G:\Qt410rc1\bin;G:\Dev-Cpp;G:\Dev-Cpp\bin;G:\MySQL5016;G:\MySQL5016\bin ...

QTDIR     G:\QT410rc1

QMAKESPEC win32-g++

может кто чего посоветует?
Записан
DenKor
Гость
« Ответ #1 : Декабрь 16, 2005, 14:50 »

Ищи поиском ниже.
Эта тема уже неоднократно обсуждалась.
Имеется ввиду использование плагинов баз данных с MiniGW
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.179 секунд. Запросов: 21.