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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: QSqlDatabase: QPSQL driver not loaded  (Прочитано 16984 раз)
Luck
Гость
« : Март 09, 2010, 17:50 »

Здравствуйте.
Столкнулся с наболевшей (судя по попыткам решения через гугл и через поиск на форуме) проблемой: при работе с Postgre SQL во время запуска программы вылезает ошибка:

QSqlDatabase: QPSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE

Qt 4.6.0
QtCreator 1.3.0
Postgre SQL 7.4.1 (необходимо использовать именно эту версию, а не более поздние)
OpenSUSE 11.2

Я пробовал:
1) пересобирать Qt с включением плагина psql, указывая путь к include и lib установленного Postgre SQL
2) прописать папки include и lib установленного Postgre SQL
3) скомпилировать плагин psql статически и включить его как статическую библиотеку в свою программу
4) отдельно перекомпилировать плагин, не пересобирая Qt и прописывая в psql.pro путь к include и lib установленного Postgre SQL
5) поместить все файлы из lib установленного Postgre SQL в каталог с исполняемым файлом, в /usr/lib, в /usr/local/lib
6) выполнить команду ldd libqsqlpsql.so из папки с файлом libqsqlpsql.so (ошибок нет, все находит)

Вроде бы, на этом мои изыскания заканчиваются... Ничего не помогло.
Есть идеи, что можно еще попробовать сделать?
P.S.: Пожалуйста, не отсылайте в поиск или в гугл: я там изрядно порылся, но не смог решить проблему.
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #1 : Март 09, 2010, 17:57 »

Из портов Qt оставлял или заменял?
Скомпиль через -qt-sql-psql
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Luck
Гость
« Ответ #2 : Март 09, 2010, 17:58 »

Заменял, ставил всю SDK из бинарника.

Через -qt-sql-psql тоже пробовал
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #3 : Март 09, 2010, 18:04 »

Так. Давай сейчас по пунктам все расскажешь.
1. Удали все, что связано с Qt.
2. Скомпилируй с -qt-sql-psql.
3. Установи и попробуй.

Все подробно опиши сюда. Советую взять qt-everywhere-opensource-src-4.х.х.tar.gz
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Luck
Гость
« Ответ #4 : Март 11, 2010, 09:15 »

1) Все снес;
2) Поставил Qt с -qt-sql-psql, указав include и lib постгреса
3) Не работает
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #5 : Март 11, 2010, 10:43 »

Я же сказал по-пунктно и подробно
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Luck
Гость
« Ответ #6 : Март 11, 2010, 11:06 »

Проблема решилась следующим образом:
1) установка openssl в /usr/local/ssl
2) установка libreadline-devel
3) копирование библиотеки libpq.so.3 из /usr/local/pgsql/lib в /usr/lib
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #7 : Март 11, 2010, 11:09 »

Копировать не нужно, просто симлинк сделай.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Luck
Гость
« Ответ #8 : Март 11, 2010, 11:21 »

я не в курсе, что это... можно подробнее?
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #9 : Март 11, 2010, 11:32 »

ln -s /usr/local/pgsql/lib/libpq.so.3 /usr/lib

Т.е. создаешь просто симлинк, указывающий на файл. Теперь при изменении /usr/local/pgsql/lib/libpq.so.3 копировать опять не нужно будет.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Luck
Гость
« Ответ #10 : Март 11, 2010, 11:32 »

спасибо
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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