crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

4 страниц V   1 2 3 > »   
Ответить в данную темуНачать новую тему
> Qt и mySQL, непонятки при компиляции самой либы с поддержкой mySQL.
Admin
  опции профиля:
сообщение 9.10.2007, 17:11
Сообщение #1


Администратор
****

Группа: Администратор
Сообщений: 646
Регистрация: 9.10.2007
Из: crossplatform.ru
Пользователь №: 1

Спасибо сказали: 17 раз(а)




Репутация:   2  


Установил переменные среды:
OPENSSL=D:\!lib!\openssl-0.9.8e
QMAKESPEC=win32-msvc2005
QTDIR=D:\!lib!\qt-4.3.0
MYSQL=D:\!lib!\mysql-5.1.11-beta
path=%path%;%QTDIR%\bin;%MYSQL%\bin

Запускаю Visual Studio Command Prompt и выполнить в ней
set include=%OPENSSL%\include;%include%;%MYSQL%\include;%QTDIR%\include
set lib=%lib%;%MYSQL%\lib\debug;%MYSQL%\lib\opt;%QTDIR%\lib

Запускаю в открытой cmd
cd %QTDIR%
configure -loadconfig win32

файл configure_win32.cache:
-platform
   -qmake
   -qt-zlib
   -qt-sql-mysql
   -qt-sql-odbc
   -qt-sql-sqlite
   -plugin-sql-mysql
   -plugin-sql-odbc
   -plugin-sql-sqlite
   -stl
   -debug-and-release
   -openssl
   -qt-style-windows
   -qt-style-windowsxp
   -qt-style-windowsvista
   -qt-style-plastique
   -qt-style-cleanlooks
   -qt-style-motif
   -qt-style-cde
   -direct3d

Все есть, и ODBC и SQLite, но после того как все откомпилилось нет почему-то поддержки mySQL, задолбался уже :(
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ViGOur
  опции профиля:
сообщение 9.10.2007, 17:17
Сообщение #2


Мастер
******

Группа: Модератор
Сообщений: 3296
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

Спасибо сказали: 231 раз(а)




Репутация:   40  


А не слишком ли ты много опций включил? :)
Большая часть этого явно не нужна:
   -qt-sql-mysql 
   -qt-sql-odbc
   -qt-sql-sqlite
   -plugin-sql-mysql
   -plugin-sql-odbc
   -plugin-sql-sqlite
А остальное не обязательно указывать, так как вроде по умолчанию ставится.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Darvin
  опции профиля:
сообщение 3.12.2007, 12:09
Сообщение #3


Студент
*

Группа: Новичок
Сообщений: 36
Регистрация: 30.11.2007
Пользователь №: 30

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(Admin @ 9.10.2007, 17:11) *
...
-qt-sql-mysql
...
-plugin-sql-mysql
...


Попробуй совсем исключить mySQL из Configure, и скомпилить библиотеку без него, а затем драйвер mySQL скомпилить отдельно.
Примерно так. Должно получиться

$ cd c:/dev/lib/qt/4.3.1/src/plugins/sqldrivers/mysql

$ qmake -o Makefile "INCLUDEPATH+=C:/webserver/mysql60/include" "LIBS+=C:/webserver/mysql60/lib/opt/libmysql.lib" mysql.pro

$ mingw32-make release debug
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Admin
  опции профиля:
сообщение 3.12.2007, 17:05
Сообщение #4


Администратор
****

Группа: Администратор
Сообщений: 646
Регистрация: 9.10.2007
Из: crossplatform.ru
Пользователь №: 1

Спасибо сказали: 17 раз(а)




Репутация:   2  


Итак, конфигурирую Qt для MSVC-2005 так:
set include=%OPENSSL%\include;%include%;%MYSQL%\include;%QTDIR%\include
set lib=%lib%;%MYSQL%\lib\debug;%MYSQL%\lib\opt
configure -loadconfig win32
В configure_win32.cache такие записи:
Цитата
-platform
-qt-sql-mysql
-qt-sql-odbc
-qt-sql-sqlite
-plugin-sql-mysql
-plugin-sql-odbc
-plugin-sql-sqlite
-debug-and-release
-fast
Потом выполняю nmake, все проходит до конца.
Захожу в demos\sqlbrowser чтобы проверить какие драйвера есть и вижу только QSQLITE и QODBC, а QMYSQL нет!

Захожу в plugins\sqldrivers, вижу либы:
Цитата
qsqlmysql4.dll
qsqlmysql4.lib
qsqlmysqld4.dll
qsqlmysqld4.lib
Либы для MYSQL есть, так почему их Qt не видит?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Admin
  опции профиля:
сообщение 6.12.2007, 17:54
Сообщение #5


Администратор
****

Группа: Администратор
Сообщений: 646
Регистрация: 9.10.2007
Из: crossplatform.ru
Пользователь №: 1

Спасибо сказали: 17 раз(а)




Репутация:   2  


Тема еще актуальна, я так и не смог подружить их. :(
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Tonal
  опции профиля:
сообщение 7.12.2007, 11:16
Сообщение #6


Активный участник
***

Группа: Участник
Сообщений: 452
Регистрация: 6.12.2007
Из: Новосибирск
Пользователь №: 34

Спасибо сказали: 69 раз(а)




Репутация:   17  


libmySQL.dll точно видеться по путям?
Посмотри с помощью Depends - что не грузиться.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Admin
  опции профиля:
сообщение 7.12.2007, 11:23
Сообщение #7


Администратор
****

Группа: Администратор
Сообщений: 646
Регистрация: 9.10.2007
Из: crossplatform.ru
Пользователь №: 1

Спасибо сказали: 17 раз(а)




Репутация:   2  


libmySQL.dll видна. Все вроде грузиться.

Но не подгружается... :(
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Tonal
  опции профиля:
сообщение 7.12.2007, 11:32
Сообщение #8


Активный участник
***

Группа: Участник
Сообщений: 452
Регистрация: 6.12.2007
Из: Новосибирск
Пользователь №: 34

Спасибо сказали: 69 раз(а)




Репутация:   17  


Тогда http://www.dependencywalker.com/ в руки и смотри, что не найдено.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Tonal
  опции профиля:
сообщение 7.12.2007, 11:36
Сообщение #9


Активный участник
***

Группа: Участник
Сообщений: 452
Регистрация: 6.12.2007
Из: Новосибирск
Пользователь №: 34

Спасибо сказали: 69 раз(а)




Репутация:   17  


Да, может следует в разделе HKEY_CURRENT_USER\Software\Trolltech\OrganizationDefaults почистить все ветки про с кешами плагинов?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Admin
  опции профиля:
сообщение 7.12.2007, 12:24
Сообщение #10


Администратор
****

Группа: Администратор
Сообщений: 646
Регистрация: 9.10.2007
Из: crossplatform.ru
Пользователь №: 1

Спасибо сказали: 17 раз(а)




Репутация:   2  


Все что нужно либа находит.
В реестре все почистил, тот же результат.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

4 страниц V   1 2 3 > » 
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


5 чел. читают эту тему (гостей: 5, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 30.11.2024, 1:01