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

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

Страниц: 1 2 [3] 4   Вниз
  Печать  
Автор Тема: mysql  (Прочитано 29002 раз)
SLiDER
Гость
« Ответ #30 : Июль 02, 2006, 23:01 »

Цитата: "Sergey B."
интересно кде4 фичи эти уже использует, или пишут на 4.1


Да уж, я думаю, не без KDE-шных програмеров, это чудо буржуйской мысли сейчас ваяется. Насколько я знаю KDE Team и Trolltech очень тесно взаимодействуют и частенько пишут код друг для друга. Хотя оно и понятно.  Веселый
Записан
crocus
Гость
« Ответ #31 : Июль 03, 2006, 06:34 »

Кое-что добавил и перезалил http://source.foliant.net.ru/plugin.zip размер 270kb
Проверил- скачивается и распаковывается без косяков.
Записан
QCasper
Гость
« Ответ #32 : Август 02, 2006, 23:24 »

Цитата: "crocus"
Кое-что добавил и перезалил http://source.foliant.net.ru/plugin.zip размер 270kb
Проверил- скачивается и распаковывается без косяков.


короче ни хрена. По твоему методу куча анрезолвов. Если не править libmysql.def, т.е. не удалять @*, то все нормально, драйвер собирается, но понту от него никакого.

Народ попробуйте кто-нить собрать, а? Если получится, расскажите мне чем руки выпрямляются...

добавлено спустя 31 минуту:

 хм... заработало... тока я не в system32 его запихнул, а в папке со своей прогой создал папку sqldrivers и туда засунул... вот и думай блин теперь, че ж за нах то такой с этим эскюэлем, у одних так работает у других эдак, у третьих вообще не известно чего ожидать...
Записан
crocus
Гость
« Ответ #33 : Август 03, 2006, 06:49 »

Цитировать
По твоему методу куча анрезолвов. Если не править libmysql.def, т.е. не удалять @*, то все нормально, драйвер собирается, но понту от него никакого.

Не понял,  так ты удалял @* или нет?? А что касается libmysql.dll  в /system32, то действительно на разных машинах по-разному (у меня драйвер не определялся при запуске примеров), а еще прикол когда прога работающая с SqLite при запуске требует libmysql.dll- вообще не вкуриваю как такое может быть.
Записан
QCasper
Гость
« Ответ #34 : Август 03, 2006, 09:38 »

Цитата: "crocus"
Цитировать
По твоему методу куча анрезолвов. Если не править libmysql.def, т.е. не удалять @*, то все нормально, драйвер собирается, но понту от него никакого.

Не понял,  так ты удалял @* или нет?? А что касается libmysql.dll  в /system32, то действительно на разных машинах по-разному (у меня драйвер не определялся при запуске примеров), а еще прикол когда прога работающая с SqLite при запуске требует libmysql.dll- вообще не вкуриваю как такое может быть.


вобщем сначала сделал все как у тебя написано, каждый шаг проверяя по три раза. Когда дошло дело до make, мне сказали типа у тебя тут анрезолвед и не видать тебе плагина. Я пробовал создавать либу манипулируя ключами dlltool - убрал -k добавил -U убрал и то и другое - ни фига. Потом я создал еще раз def файлик, он есесно опять создался с @* и я их НЕ СТАЛ УДАЛЯТЬ. И, о чудо, плагин собрался. Дома у меня он не виделся, и проги стали работать когда я помещал его в папку sqldrivers рядом с прогой. А вот сейчас я сижу за другой машиной, и там все нормально увиделось, причем плагин единственным своим экземпляром лежит в кютешном каталоге плагинов (plugins/sqldrivers), т.е. не в system32, не рядом с прогой его нет.

добавлено спустя 19 минут:

 Я начинаю подозревать, что собака зарыта где-то рядом с переменными окружения. Значит на той машине, где у меня все пашет даже если плагин лежит ТОЛЬКО в кютешном каталоге драйверов, у меня две версии библиотеки, одна коммерческая, другая опенсорс. Обе 4.1.1. В переменных окружения все пути прописаны к коммерческой версии. Когда мне надо было поюзать опенсорс, я открывал консольку, которая запускала *.bat Файлик, где в path устанавливались пути к опенсорс, а именно это переменные QTDIR, PATH и QMAKESPEC=win32-g++ вместо win32-msvc. Именно таким образом я собирал плагин. Т.е. в системе все пути к коммерческой, но я открыл консоль там установил пути к опенсорс и собрал. Получив плагин я его распихал где только можно, - в system32, рядом с прогой в папке sqldrivers, просто рядом с прогой - никаких результатов, в списке доступных дров mysql не было. Причем заметьте, я запускал проги из консоли, в которой патч был прописан к опенсорс. Тогда я в системе исправил патч к опенсорс, и ПЕРЕСОБРАЛ ПЛАГИН, т.е. удалил его и собрал заново. Все заработало... плагин видно отовсюду, и лежит он ТОЛЬКО в plugins/sqldrivers...
Надо в твоем мануале в начале крупным красным шрифтом написать:
проверяйте чтобы все пути, которые только есть в системе указывали на какую-нить одну версию опенсорс Qt Улыбающийся
Меня теперь, только oдин вопрос мучает, почему у тебя без @* собирается, а у меня с @* ...
Записан
crocus
Гость
« Ответ #35 : Август 03, 2006, 11:25 »

Вот это действительно непонятно, у меня обращение к функциям MySQL без @*
(C:\Qt\4.2.0\src\sql\drivers\mysql\qsql_mysql.cpp), а у тебя получается с.
Записан
Admin
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1988



Просмотр профиля
« Ответ #36 : Август 03, 2006, 13:01 »

конструкция

export "С"{
}

нигде не используется?
Записан
QCasper
Гость
« Ответ #37 : Август 03, 2006, 22:45 »

Цитата: "Admin"
конструкция

export "С"{
}

нигде не используется?


в смысле? где например?

добавлено спустя 8 часов 31 минуту:

 цукко, это пипец нах, у меня просто слов нет, пришел домой драйвер не видит ни одна прога. Пресобрал, все сделал так как на работе - хрен бы блин, вот нет его и все тут... что за ж... то такая Грустный((

добавлено спустя 1 час 5 минут:

 Новый прикол. У меня теперь драйвер виден прогами, если его положить в папку %QTDIR%\demos\sqlbrowser\sqldrivers. Т.е. теперь чтобы моя прога заработала ее нужно тащить в каталог %QTDIR%\demos\sqlbrowser. Иначе, даже если драйвер рядом с ней положить, она тупо его не видит... истерический хохот...  :lol:
Записан
crocus
Гость
« Ответ #38 : Август 04, 2006, 02:31 »

Не пойму ты про какой драйвер говоришь  libmysql.dll или про qt-ный плагин,
и в качестве рекомендации- пересобери Qt c опцией -qt-sql-mysql
Записан
QCasper
Гость
« Ответ #39 : Август 04, 2006, 08:15 »

Цитата: "crocus"
Не пойму ты про какой драйвер говоришь  libmysql.dll или про qt-ный плагин,
и в качестве рекомендации- пересобери Qt c опцией -qt-sql-mysql


про плагин. Кстати я вчера еще раз нажал кнопку "собрать" Улыбающийся ну имеется ввиду зашел в каталог сурцов и набрал make, плагин собрался и опять стал виден отовсюду... причем между этим шагом и предыдущим никаких значимых действий рводе не проводилось, например изменение переменных окружения. А кюте я до этого пересобирал с этой опцией, еще когда поднимали эту тему - тогда мне это тоже не помогло
Записан
Nikol
Гость
« Ответ #40 : Август 04, 2006, 14:53 »

если я правильно понял проблему(бо читать все посты лень)

в либе QtCore.dll() при компиляции (вроде только в бесплатной версии) промисуется путь типа "qt_plugpath=C:\Qt\4.1.0\plugins", если либа ложится в system32 и потом ставится qt4.1.1(c:\Qt\4.1.1\) то либу в system32 надо менять или патчить.
PS еще помоему QtSql4.dll не видит qmysqld.dll, а QtSql4d.dll qmysql.dll
Записан
QCasper
Гость
« Ответ #41 : Август 04, 2006, 23:12 »

Цитата: "Nikol"
если я правильно понял проблему(бо читать все посты лень)

в либе QtCore.dll() при компиляции (вроде только в бесплатной версии) промисуется путь типа "qt_plugpath=C:\Qt\4.1.0\plugins", если либа ложится в system32 и потом ставится qt4.1.1(c:\Qt\4.1.1\) то либу в system32 надо менять или патчить.
PS еще помоему QtSql4.dll не видит qmysqld.dll, а QtSql4d.dll qmysql.dll


по поводу менять и патчить. Я же выше писал, что плагин у меня работает как ему вздумается, вот нажал я кнопку собрать, он не работает, или работает только в конкретной папке. Нажал кнопку собрать через 10 минут, он вообще не работает, нажал еще через полчаса, он работает нормально. Это все в рамках одной версии Qt.
А насчет кто кого видит не видит, у меня собраны были оба плагина и дебаг и релиз, и все равно видимость такая как я уже описал.
Записан
_govorilka
Гость
« Ответ #42 : Август 05, 2006, 10:14 »

QCasper, если еще не разобрался с MySQL... Могу скинуть один исходник... Забирает данные из MySQL и ложит их в QTableWidget!
http://rapidshare.de/files/28244292/dbtable.zip.html
Записан
QCasper
Гость
« Ответ #43 : Август 06, 2006, 12:51 »

Цитата: "_govorilka"
QCasper, если еще не разобрался с MySQL... Могу скинуть один исходник... Забирает данные из MySQL и ложит их в QTableWidget!
http://rapidshare.de/files/28244292/dbtable.zip.html


хочешь сказать ему плагин не нужен?
и вообще, честно говоря, это конечно не решение...
Записан
crocus
Гость
« Ответ #44 : Август 07, 2006, 04:10 »

Предистория: скачал свежий снэпшот  4.2.0 собрал как обычно qt-sql-mysql  -ранее для корректного отображения кириллицы использовал библиотеку от PHP (клал в папку с прогой) , но сейчас прога выдала ошибку что в биб-ке не найдена точка входа в процедуру mysql_set_character_set. Удалил libmySQL.dll - прога запустилась, но русский отображаться перестал.
Решилось просто - ранее (и на  форуме информация была) использовали:
Код:
query.exec("SET NAMES utf8;");
заменил на
Код:
query.exec("SET NAMES utf8_general_ci;");
и все заработало как положено-- со стандартной биб-кой libmySQL.dll и с полной поддержкой русского.
Записан
Страниц: 1 2 [3] 4   Вверх
  Печать  
 
Перейти в:  


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