crossplatform.ru

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

2 страниц V  < 1 2  
Ответить в данную темуНачать новую тему
pro-maker
  опции профиля:
сообщение 31.7.2009, 9:01
Сообщение #11


Новичок


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

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




Репутация:   0  


Цитата(ecspertiza @ 31.7.2009, 11:14) *
Ну а попробуй собирать не плагин а встраивать драйвер в модуль QtSql как тебе пишет Litkevich Yuriy

configure -qt-sql-ibase


Cитуация с configure -qt-sql-ibase аналогична.

Если исходить из примера Litkevich Yuriy, делаю sudo ./configure -qt-sql-ibase "INCLUDEPATH+=/opt/firebird/include" "LIBS+=/opt/firebird/lib/libfbclient.so"

пишет:

INCLUDEPATH+=/opt/firebird/include: unknown argument
LIBS+=/opt/firebird/lib/libfbclient.so: unknown argument

затем выдает список ключей, как при выполнении configure --help

Такой метод не катит.



На сайте Trolltech (http://doc.trolltech.com/3.3/sql-driver.html#QIBASE) есть мануал по подключению sql-плагинов. Для QIBASE:

cd $QTDIR/plugins/src/sqldrivers/ibase
qmake -o Makefile "INCLUDEPATH+=/opt/firebird/include" "LIBS+=-L/opt/firebird/lib" ibase.pro
make

Так и делаю. Это выполняется.

Что должно быть дальше?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ecspertiza
  опции профиля:
сообщение 31.7.2009, 10:09
Сообщение #12


Студент
*

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

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




Репутация:   1  


Ну вот теперь запусти Qt/demos/sqlbrowser, и посмотри там есть список установленных драйверов если есть QIBASE значитсо он установился, если нет то всё плохо и тебе придётся ещё долго ковыряться.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
pro-maker
  опции профиля:
сообщение 31.7.2009, 10:18
Сообщение #13


Новичок


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

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




Репутация:   0  


В том то и проблема, что его там нет.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ecspertiza
  опции профиля:
сообщение 31.7.2009, 11:03
Сообщение #14


Студент
*

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

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




Репутация:   1  


$QTDIR/plugins/src/sqldrivers/ibase

кокой то странный путь, обычно он такой $QTDIR/src/plugins/sqldrivers/ibase

попробуй так

cd $QTDIR
./configure -plugin-sql-ibase -I "/opt/firebird/include" -L "/opt/firebird/lib"

потом

$QTDIR/src/plugins/sqldrivers/ibase/ibase.pro поправить руками на вот такой

TARGET     = qsqlibase

HEADERS        = ../../../sql/drivers/ibase/qsql_ibase.h
SOURCES        = main.cpp \
          ../../../sql/drivers/ibase/qsql_ibase.cpp

unix:!contains( LIBS, .*gds.* ):!contains( LIBS, .*libfb.* ):LIBS    *= -lfbclient

win32:!contains( LIBS, .*gds.* ):!contains( LIBS, .*fbclient.* ) {
    !win32-borland:LIBS *= -lfbclient_ms
    win32-borland:LIBS  += fbclient_ms.lib
}

include(../qsqldriverbase.pri)


потом

cd $QTDIR/plugins/src/sqldrivers/ibase
qmake
make

затем

cd $QTDIR
make
make install
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 31.7.2009, 17:02
Сообщение #15


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

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

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




Репутация:   94  


Цитата(pro-maker @ 31.7.2009, 10:21) *
2) Установил поддержку ibase:
...
3) Далее пытаюсь сконфигурировать Qt:
ВСЁ НЕ ПРАВИЛЬНО

Если ты собрался собирать Qt из исходников последовательность такая:
Конфигурация
Сборка (компиляция)

А у тебя всё наоборот.

Конфигурировать после конфигурации безсмысленно, если конфигурацию не очистить.

В данный момент в каталоге Qt у тебя полный хаос. Его надо просто удалить!

Затем определись, хочешь ли ты встраивать драйвер QIbase в Qt, или использовать этот драйвер как плагин. (последнее проще)


Цитата(pro-maker @ 31.7.2009, 13:01) *
Если исходить из примера Litkevich Yuriy, делаю sudo ./configure -qt-sql-ibase "INCLUDEPATH+=/opt/firebird/include" "LIBS+=/opt/firebird/lib/libfbclient.so"
пишет:
INCLUDEPATH+=/opt/firebird/include: unknown argument
LIBS+=/opt/firebird/lib/libfbclient.so: unknown argument
затем выдает список ключей, как при выполнении configure --help
Такой метод не катит.
возможно я ошибся в способе указания. Но для configure точно можно указывать пути.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 1.8.2009, 18:10
Сообщение #16


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

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

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




Репутация:   94  


Цитата(Litkevich Yuriy @ 31.7.2009, 21:02) *
возможно я ошибся в способе указания. Но для configure точно можно указывать пути.
вот нашёл это место в Асистенте: Сборка драйверов при запуске configure
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
pro-maker
  опции профиля:
сообщение 3.8.2009, 5:49
Сообщение #17


Новичок


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

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




Репутация:   0  


Благодарю всех за помощь. Проблема разрешилась следующим образом:

1) Установил пакет Firebird2.1-dev через менеджер пакетов Synaptic;
2) В MС (midnight commander) создал символьную ссылку /usr/lib/firebird/2.1/lib/libib_util.so -> /usr/lib/libgds.so
3) configure с нужными ключами
4) make
5) make install
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
pro-maker
  опции профиля:
сообщение 4.8.2009, 6:31
Сообщение #18


Новичок


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

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




Репутация:   0  


Пересобрал qt с плагином. Теперь другая беда.

Подключаюсь к бд:

QSqlDatabase db = QSqlDatabase::addDatabase("QIBASE");
db.setHostName("192.168.0.24:/usr/database");
db.setDatabaseName("dbase.gdb");
db.setUserName("USER");
db.setPassword("USER");
db.open();

Вылазит ошибка:

symbol lookup error: /usr/local/Trolltech/Qt-4.5.2/plugins/sqldrivers/libqsqlibase.so: undefined symbol: isc_attach_database
/home/dima/ibase/ibase завершилась с кодом 127

Как с этим бороться?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 4.8.2009, 13:10
Сообщение #19


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

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

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




Репутация:   94  


pro-maker, попробуй подключится к БД с помощью штатной демки - sqlbrowser

П.С. Незнаю где в лине она лежит в виндовозе так - %QTDIR%/demos/sqlbrowser
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
pro-maker
  опции профиля:
сообщение 4.8.2009, 13:54
Сообщение #20


Новичок


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

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




Репутация:   0  


Подсоединяюсь через sqlbrowser - просто вылетает из него. (Ввожу данные, нажимаю connect, sqlbrowser закрывается). При компиляции то же самое. Полоска индикатора компиляции полная и зеленая. Во вкладке "Вывод приложения (Qt creator) пишется что "программа завершилась с кодом 127".
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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


RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 8.7.2025, 14:13