crossplatform.ru

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

2 страниц V   1 2 >  
Ответить в данную темуНачать новую тему
> Добавить драйвер QPSQL, Доустановка драйвера
pwp2008
  опции профиля:
сообщение 19.5.2015, 18:46
Сообщение #1


Студент
*

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

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




Репутация:   0  


Получили системный блок с предустановленными МСВС и Qt-4.6, но в Qt нет
драйвера QPSQL, есть только QSQLITE. Можно ли его (QPSQL)туда добавить
без переустановки Qt-4.6 и, если можно, то как это сделать.
Частичная проблема еще в том, что нет дистрибутива Qt-4.6, а есть Qt-4.5.0,
но из него нужен только драйвер QPQSL.
2. Или нужно ставить Qt-4.5.0 полностью и на ней работать?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
rich
  опции профиля:
сообщение 20.5.2015, 21:08
Сообщение #2


Участник
**

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

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




Репутация:   0  


Цитата(pwp2008 @ 19.5.2015, 18:46) *
Получили системный блок с предустановленными МСВС и Qt-4.6, но в Qt нет
драйвера QPSQL, есть только QSQLITE. Можно ли его (QPSQL)туда добавить
без переустановки Qt-4.6 и, если можно, то как это сделать.
Частичная проблема еще в том, что нет дистрибутива Qt-4.6, а есть Qt-4.5.0,
но из него нужен только драйвер QPQSL.
2. Или нужно ставить Qt-4.5.0 полностью и на ней работать?

<<< Можно ли его (QPSQL)туда добавить
Можно.
<<< если можно, то как это сделать
Собрать libqsqlpsql.so и положить рядом с libqsqlite.so.
<<< Частичная проблема еще в том, что нет дистрибутива Qt-4.6, а есть Qt-4.5.0
Как нет? Вот 4.6.*
<<< Или нужно ставить Qt-4.5.0 полностью и на ней работать?
Это спросите у тех от кого получаете задание на разработку.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
pwp2008
  опции профиля:
сообщение 21.5.2015, 18:58
Сообщение #3


Студент
*

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

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




Репутация:   0  


Цитата
<<< Можно ли его (QPSQL)туда добавить
Можно.
<<< если можно, то как это сделать
Собрать libqsqlpsql.so и положить рядом с libqsqlite.so.

2rich: Видите ли, я так и сделал практически сразу, поскольку на другой ПЭВМ уже стоял Qt_4.5
и драйвер QPSQL там был и определялся. Взял оттуда libqsqlpsql.so и положил в plugin/sqldrivers
вместе с libqsqlite.so. К сожалению, среди доступных драйверов он не появляется....
Почти неделю пробовал в разных вариантах - не видит QPSQL. Может и сборку нужно делать
непосредственно в том Qt, в который я и хочу его добавить, но по причине отсутствия sql.pro
Qt-4.6 так пока не делал.

<<< Частичная проблема еще в том, что нет дистрибутива Qt-4.6, а есть Qt-4.5.0
Как нет? Вот 4.6.*

За ссылку спасибо, видимо пригодится.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
wiz29
  опции профиля:
сообщение 21.5.2015, 19:54
Сообщение #4


Старейший участник
****

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

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




Репутация:   12  


возможно проблема в rpath той so которую вы взяли с другой машины.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
rich
  опции профиля:
сообщение 21.5.2015, 20:02
Сообщение #5


Участник
**

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

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




Репутация:   0  


Цитата(pwp2008 @ 21.5.2015, 18:58) *
Может и сборку нужно делать
непосредственно в том Qt, в который я и хочу его добавить

Так и надо. libqsqlpsql.so из Qt_4.5 в Qt_4.6 не будет виден.
Ещё нужно что бы драйвер (или QT полностью) сибирались в режиме релиза либо всё в режиме отладки и программа которая будет использовать драйвер тоже собиралась в том же режиме.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
pwp2008
  опции профиля:
сообщение 22.5.2015, 17:51
Сообщение #6


Студент
*

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

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




Репутация:   0  


Цитата(wiz29 @ 21.5.2015, 19:54) *
возможно проблема в rpath той so которую вы взяли с другой машины.

Пока не понял, а что разве путь может быть зашит внутри этой библиотеки с драйвером?

Цитата(rich @ 21.5.2015, 20:02) *
>>Может и сборку нужно делать
>>непосредственно в том Qt, в который я и хочу его добавить
Так и надо. libqsqlpsql.so из Qt_4.5 в Qt_4.6 не будет виден.
Ещё нужно что бы драйвер (или QT полностью) собирались в режиме релиза либо всё в режиме отладки и программа которая будет использовать драйвер тоже собиралась в том же режиме.

Про режимы - понятно. Не совсем пока въезжаю, как мне эту доустановку только драйвера сделать...
Ранее пытался сделать такой файл из полного Makefile для всего Qt, но редактирование Makefile не для простых людей..Может как то использовать Makefile из директории установки ....src/sql. Ведь там и sql.pro файл имеется.
В общем, если есть что подсказать на эту тему - уж пожалуйста.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
rich
  опции профиля:
сообщение 22.5.2015, 22:52
Сообщение #7


Участник
**

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

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




Репутация:   0  


Цитата(pwp2008 @ 22.5.2015, 17:51) *
Не совсем пока въезжаю, как мне эту доустановку только драйвера сделать...

Выше же определились.

1. Качаете qt 4.6.
2. Собираете Qt 4.6 с драйвером qsqlpsql или отдельно проект qt-everywhere-opensource-src-4.6.0/src/plugins/sqldrivers/psql
3. Переносите libqsqlpsql.so на целевую ПЭВМ
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
pwp2008
  опции профиля:
сообщение 23.5.2015, 9:51
Сообщение #8


Студент
*

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

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




Репутация:   0  


Цитата(rich @ 22.5.2015, 22:52) *
Цитата(pwp2008 @ 22.5.2015, 17:51)
Не совсем пока въезжаю, как мне эту доустановку только драйвера сделать...
Выше же определились.

1. Качаете qt 4.6.
2. Собираете Qt 4.6 с драйвером qsqlpsql или отдельно проект qt-everywhere-opensource-src-4.6.0/src/plugins/sqldrivers/psql
3. Переносите libqsqlpsql.so на целевую ПЭВМ

Ну да, я так и делаю, только собираю Qt-4.5.0 и пытаюсь добавить к /plugins/sqldriver libqsqlpsql.so
правда для других версий : то 4, то 4.6 . Этот драйвер те системы не видят.
В понедельник попробую тоже самое с Qt 4.6
Дома собрал Qt-4.5 с драйвером psql, но добавил в ./configure опцию -no-rpath(для эксперимента).
Так библиотека драйвера в plugin появилась, а пересобранная моя программа его не видит.
В проектах, открытых в Qt начал появляться файл (или корень дерева) qtconfig.
Однако исполняемые файлы, собранные в предыдущей Qt-4.5 находят этот драйвер. Функцию -no-rpath , конечно, я еще для себя не уяснил.
И еще, можно чуть подробнее про второй вариант сборки : "или отдельно проект qt-everywhere-opensource-src-4.6.0/src/plugins/sqldrivers/psql" . Т. е. мне вытащить из полного Qt source директорию
src-4.6.0/src/plugins/sqldrivers/psql и выполнить qmake или make ?
Или таким же образом выполнить вышестоящий проект sql.pro - ведь там еще все собирается вместе с /kernel и /models.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
rich
  опции профиля:
сообщение 23.5.2015, 11:01
Сообщение #9


Участник
**

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

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




Репутация:   0  


Цитата(wiz29 @ 21.5.2015, 19:54) *
возможно проблема в rpath той so которую вы взяли с другой машины.

pwp2008, в терминале наберите:
ldd libqsqlite.so > ldd-libqsqlite.so

Сделать это нужно в каталоге где находится libqsqlite.so.
Появится файл ldd-libqsqlite.so. Покажите его содержимое.

Цитата(pwp2008 @ 23.5.2015, 9:51) *
Qt-4.5.0 и пытаюсь добавить к /plugins/sqldriver libqsqlpsql.so
правда для других версий : то 4, то 4.6

Поправьте меня кто нидудь, если это не так. Вроде версия должна полностью совпадать.
Цитата(pwp2008 @ 23.5.2015, 9:51) *
И еще, можно чуть подробнее про второй вариант сборки

Не надо ничего вытаскивать пусть там и находится, переходите в src-4.6.0/src/plugins/sqldrivers/psql и выполняете qmake и make.
Цитата(pwp2008 @ 23.5.2015, 9:51) *
Функцию -no-rpath , конечно, я еще для себя не уяснил.

Цитата
# ./configure --help | grep rpath
-no-rpath .......... Do not use the library install path as a runtime
+ -rpath ............. Link Qt libraries and executables using the library


Сообщение отредактировал rich - 23.5.2015, 11:05
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
pwp2008
  опции профиля:
сообщение 23.5.2015, 11:52
Сообщение #10


Студент
*

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

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




Репутация:   0  


Цитата(rich @ 23.5.2015, 11:01) *
pwp2008, в терминале наберите:
ldd libqsqlite.so > ldd-libqsqlite.so
Сделать это нужно в каталоге где находится libqsqlite.so.
Появится файл ldd-libqsqlite.so. Покажите его содержимое.

Это после сборки всего Qt c параметром -no-rpath, архив sql_drv.rar инфо по ldd.

>>>Цитата
>>># ./configure --help | grep rpath
>>>-no-rpath .......... Do not use the library install path as a runtime
>>>+ -rpath ............. Link Qt libraries and executables using the library
Да это я читал....


Прикрепленные файлы
Прикрепленный файл  ldd_libqsqlite.txt ( 749 байт ) Кол-во скачиваний: 532
Прикрепленный файл  ldd_libqsqlpsql.txt ( 1.02 килобайт ) Кол-во скачиваний: 549
 
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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




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