crossplatform.ru

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

11 страниц V  « < 6 7 8 9 10 > »   
Ответить в данную темуНачать новую тему
> Qt и MySQL
AD
  опции профиля:
сообщение 21.7.2009, 10:18
Сообщение #71


Профессионал
*****

Группа: Участник
Сообщений: 2003
Регистрация: 4.2.2008
Из: S-Petersburg
Пользователь №: 84

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




Репутация:   17  


Цитата(berserk @ 21.7.2009, 11:08) *
ошибка есть, драйвер не загружен

А у Вас dll и Ваше приложение одним компилятором собраны?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
berserk
  опции профиля:
сообщение 21.7.2009, 10:23
Сообщение #72


Студент
*

Группа: Участник
Сообщений: 44
Регистрация: 9.2.2009
Пользователь №: 540

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




Репутация:   0  


Цитата(AD @ 21.7.2009, 11:18) *
Цитата(berserk @ 21.7.2009, 11:08) *
ошибка есть, драйвер не загружен

А у Вас dll и Ваше приложение одним компилятором собраны?


да. На моём рабочем компьютере где стоит QT, где собирается программа, где был собран драйвер БД всё прекрасно работает. А вот на другом компьютере который о QT ничего не знает не подключаются плагины. Основные библиотеки скопированные в папку с программой работают прекрасно.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
BRE
  опции профиля:
сообщение 21.7.2009, 11:04
Сообщение #73


Профессионал
*****

Группа: Участник
Сообщений: 1112
Регистрация: 6.3.2009
Из: Ростов-на-Дону
Пользователь №: 591

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




Репутация:   44  


Цитата(berserk @ 21.7.2009, 11:23) *
да. На моём рабочем компьютере где стоит QT, где собирается программа, где был собран драйвер БД всё прекрасно работает. А вот на другом компьютере который о QT ничего не знает не подключаются плагины. Основные библиотеки скопированные в папку с программой работают прекрасно.

В папке с программой создай папку sqldrivers и туда скопируй драйвер.
Подробности в assistent: How to Create Qt Plugins.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 21.7.2009, 11:13
Сообщение #74


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

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




Репутация:   94  


berserk, попробуй почистить кэш плагинов в реестре, на второй машине, может ты там уже эксперементировал и неудачно, Qt повторно незагружает плагины если они были одинажды забракованы.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
berserk
  опции профиля:
сообщение 21.7.2009, 13:16
Сообщение #75


Студент
*

Группа: Участник
Сообщений: 44
Регистрация: 9.2.2009
Пользователь №: 540

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




Репутация:   0  


Цитата(Litkevich Yuriy @ 21.7.2009, 12:13) *
berserk, попробуй почистить кэш плагинов в реестре, на второй машине, может ты там уже эксперементировал и неудачно, Qt повторно незагружает плагины если они были одинажды забракованы.

как это сделать? на второй машине QT никогда не было...

в общем методом научного тыка я выяснил, что не подключается именно драйвер собранный мной. Странно но на моей машине он работает. На других нет. Может я что-нибудь собрал не так?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
BRE
  опции профиля:
сообщение 21.7.2009, 13:51
Сообщение #76


Профессионал
*****

Группа: Участник
Сообщений: 1112
Регистрация: 6.3.2009
Из: Ростов-на-Дону
Пользователь №: 591

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




Репутация:   44  


Цитата(berserk @ 21.7.2009, 14:16) *
в общем методом научного тыка я выяснил, что не подключается именно драйвер собранный мной. Странно но на моей машине он работает. На других нет. Может я что-нибудь собрал не так?

А MySQL либы ты на target-машину перенес?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
berserk
  опции профиля:
сообщение 21.7.2009, 13:57
Сообщение #77


Студент
*

Группа: Участник
Сообщений: 44
Регистрация: 9.2.2009
Пользователь №: 540

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




Репутация:   0  


Цитата(BRE @ 21.7.2009, 14:51) *
Цитата(berserk @ 21.7.2009, 14:16) *
в общем методом научного тыка я выяснил, что не подключается именно драйвер собранный мной. Странно но на моей машине он работает. На других нет. Может я что-нибудь собрал не так?

А MySQL либы ты на target-машину перенес?

ну я firebird использую...
в общем криво косо - разобрался...
Оказалось самый простой способ описал BRE, за что ему спасибо.
Далее нужно было fbclient скопировать в директорию с программой. (ну мне это помогло)
После этого практически везде заработало, кроме нескольких компов, где стоял firebird другой версии.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 21.7.2009, 15:31
Сообщение #78


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

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




Репутация:   94  


Цитата(berserk @ 21.7.2009, 17:57) *
Далее нужно было fbclient скопировать в директорию с программой. (ну мне это помогло)
он просто должен быть в пути поиска (PATH) и обычно, для виндовоза, он по умолчанию копируется в system32
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
sidsukana
  опции профиля:
сообщение 5.2.2011, 23:02
Сообщение #79


Участник
**

Группа: Участник
Сообщений: 158
Регистрация: 23.12.2010
Из: Челябинск
Пользователь №: 2296

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




Репутация:   2  


Ребят, прочитал всю тему и гуглил, но так и не нашел решения.
В общем такая ситуация:
Работал со студией, под нее собирал mysql все нормально было. Сейчас понадобилось работать с QtCreator и тут началось. В общем mingw есть, mysql есть собираю с таким конфигом

configure -shared -release -qt-sql-mysql -I "C:\mysql\include" -L "C:\mysql\lib\opt"

Присборке получаю такой лог
Раскрывающийся текст

Creating library file: c:\Qt\4.7.1mingw\lib\libQtSql4.a
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x473): undefined re
ference to `mysql_thread_end@0'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x480): undefined re
ference to `mysql_close@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x731): undefined re
ference to `mysql_stmt_insert_id@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x769): undefined re
ference to `mysql_insert_id@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x7c0): undefined re
ference to `mysql_num_rows@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x7df): undefined re
ference to `mysql_stmt_num_rows@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x886): undefined re
ference to `mysql_num_rows@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x8b3): undefined re
ference to `mysql_stmt_num_rows@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0xa6b): undefined re
ference to `mysql_num_fields@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0xb6a): undefined re
ference to `mysql_fetch_field@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0xc0d): undefined re
ference to `mysql_stmt_result_metadata@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0xc97): undefined re
ference to `mysql_character_set_name@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0xf76): undefined re
ference to `mysql_free_result@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0xf92): undefined re
ference to `mysql_next_result@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0xfad): undefined re
ference to `mysql_stmt_close@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0xfcf): undefined re
ference to `mysql_free_result@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x111f): undefined r
eference to `mysql_store_result@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x1364): undefined r
eference to `mysql_stmt_error@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x136f): undefined r
eference to `mysql_stmt_errno@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x1509): undefined r
eference to `mysql_stmt_data_seek@12'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x151a): undefined r
eference to `mysql_stmt_fetch@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x15b4): undefined r
eference to `mysql_data_seek@12'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x15c5): undefined r
eference to `mysql_fetch_row@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x178b): undefined r
eference to `mysql_errno@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x17a0): undefined r
eference to `mysql_field_seek@8'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x17ab): undefined r
eference to `mysql_fetch_field@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x17e8): undefined r
eference to `mysql_fetch_field@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x17fd): undefined r
eference to `mysql_field_seek@8'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x185e): undefined r
eference to `mysql_error@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x186b): undefined r
eference to `mysql_errno@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x1a83): undefined r
eference to `mysql_list_fields@12'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x1ace): undefined r
eference to `mysql_fetch_field@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x1adb): undefined r
eference to `mysql_free_result@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x1ca5): undefined r
eference to `mysql_next_result@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x1d4a): undefined r
eference to `mysql_store_result@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x1d61): undefined r
eference to `mysql_field_count@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x1db0): undefined r
eference to `mysql_affected_rows@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x1dde): undefined r
eference to `mysql_fetch_field_direct@8'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x1e6a): undefined r
eference to `mysql_free_result@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x24ed): undefined r
eference to `mysql_query@8'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x25ed): undefined r
eference to `mysql_query@8'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x26ed): undefined r
eference to `mysql_query@8'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x2be0): undefined r
eference to `mysql_init@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x2d6a): undefined r
eference to `mysql_real_connect@32'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x2de9): undefined r
eference to `mysql_set_character_set@8'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x2e01): undefined r
eference to `mysql_get_client_version@0'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x2e12): undefined r
eference to `mysql_thread_init@0'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x2e81): undefined r
eference to `mysql_get_server_version@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x2eb3): undefined r
eference to `mysql_options@12'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x2f7d): undefined r
eference to `mysql_close@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x30b5): undefined r
eference to `mysql_select_db@8'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x31e0): undefined r
eference to `mysql_close@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x359e): undefined r
eference to `mysql_real_query@12'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x35bc): undefined r
eference to `mysql_store_result@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x35de): undefined r
eference to `mysql_field_count@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x361f): undefined r
eference to `mysql_affected_rows@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x364a): undefined r
eference to `mysql_fetch_field_direct@8'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x378b): undefined r
eference to `mysql_field_count@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x38cb): undefined r
eference to `mysql_stmt_prepare@12'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x38e4): undefined r
eference to `mysql_stmt_param_count@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x38f7): undefined r
eference to `mysql_stmt_param_count@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x3a0a): undefined r
eference to `mysql_stmt_init@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x3cc6): undefined r
eference to `mysql_real_escape_string@16'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x3fc3): undefined r
eference to `mysql_fetch_lengths@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x4892): undefined r
eference to `mysql_stmt_reset@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x49a5): undefined r
eference to `mysql_stmt_param_count@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x49bf): undefined r
eference to `mysql_stmt_execute@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x4a1d): undefined r
eference to `mysql_stmt_affected_rows@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x4a50): undefined r
eference to `mysql_stmt_bind_result@8'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x4a81): undefined r
eference to `mysql_stmt_attr_set@12'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x4a95): undefined r
eference to `mysql_stmt_store_result@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x4aca): undefined r
eference to `mysql_stmt_bind_result@8'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x4bde): undefined r
eference to `mysql_stmt_param_count@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x5198): undefined r
eference to `mysql_stmt_bind_param@8'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x5457): undefined r
eference to `mysql_fetch_row@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x5497): undefined r
eference to `mysql_stmt_fetch@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x557d): undefined r
eference to `mysql_get_server_version@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x574b): undefined r
eference to `mysql_list_tables@8'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x5771): undefined r
eference to `mysql_data_seek@12'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x577c): undefined r
eference to `mysql_fetch_row@4'
./tmp\obj\release_shared\qsql_mysql.o:qsql_mysql.cpp:(.text+0x57e8): undefined r
eference to `mysql_free_result@4'
collect2: ld returned 1 exit status
mingw32-make[2]: *** [..\..\lib\QtSql4.dll] Error 1
mingw32-make[2]: Leaving directory `C:/Qt/4.7.1mingw/src/sql'
mingw32-make[1]: *** [release] Error 2
mingw32-make[1]: Leaving directory `C:/Qt/4.7.1mingw/src/sql'
mingw32-make: *** [sub-sql-make_default-ordered] Error 2


В C:\mysql\lib\opt присутствуют файлы libmysql.lib, libmysql.def, libmysql.a.

Важно то, что мне надо собрать mysql встроенный в Qt, а не как плагин.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 6.2.2011, 7:53
Сообщение #80


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

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




Репутация:   94  


Цитата(sidsukana @ 6.2.2011, 1:02) *
configure -shared -release -qt-sql-mysql -I "C:\mysql\include" -L "C:\mysql\lib\opt"
надобыло сразу библиотеку указать, а не только путь.
configure -shared -release -qt-sql-mysql -I "C:\mysql\include" -l "C:\mysql\lib\opt\libmysql.lib"
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

11 страниц V  « < 6 7 8 9 10 > » 
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


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




RSS Текстовая версия Сейчас: 28.12.2024, 9:41