Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [QT+Oracle] Драйвер OCI 
V
    Опции темы
Shadowlord
Дата 19.4.2012, 17:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 275
Регистрация: 28.11.2006

Репутация: нет
Всего: 5



Поставил QT SDK 1.2.1 (http://qt.nokia.com/downloads/), в процессе работы пондобилось работать с базой oracle ,выяснил что драйвер есть только для sqlite,  остальные как я понял предпологается собирать из исходников.
погуглив нашел кучу сайтов примерно с таким советом
Код

 cd $QTDIR/src/plugins/sqldrivers/oci
 qmake "INCLUDEPATH+=/usr/include/oracle/10.1.0.3/client/" "LIBS+=-L/usr/lib/oracle/10.1.0.3/client/lib -lclntsh" oci.pro
 make

Только дело в том что не смог найти у себя этот проект, нашел только два ~/QtSDK/QtSources/4.8.0/src/sql где лежит проект sql.pro
Код

~/QtSDK/QtSources/4.8.0/src/sql$ ls
drivers  Makefile  pkgconfig    README.module  sql.pro.user
kernel   models    qsqlquery.o  sql.pro

собственно все это добро прикрученно к этому проекту, в папке drivers лежат папки с исходниками драйверов
Код

~/QtSDK/QtSources/4.8.0/src/sql/drivers/oci$ ls
qsql_oci.cpp  qsql_oci.h  qsql_oci.pri

Вот как я понимаю то что мне нужно, но вот как их правильно собрать не соображу
Буду признателен за любую помощь 
PM MAIL   Вверх
borisbn
Дата 20.4.2012, 06:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 48
Всего: 135



Покажи содержимое папки
~/QtSDK/QtSources/4.8.0/src/plugins/sqldrivers
и
~/QtSDK/QtSources/4.8.0/src/plugins/sqldrivers/oci



--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
Shadowlord
Дата 20.4.2012, 07:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 275
Регистрация: 28.11.2006

Репутация: нет
Всего: 5



Цитата(borisbn @ 20.4.2012,  06:18)
Покажи содержимое папки
~/QtSDK/QtSources/4.8.0/src/plugins/sqldrivers
и
~/QtSDK/QtSources/4.8.0/src/plugins/sqldrivers/oci


Спасибо за подсказку совсем я видемо слепой стал, не увидел папку  plugins, буду пробовать собрать драйвер.
Надеюсь найденный ранее метод поможет
 
Код

~/QtSDK/QtSources/4.8.0/src/plugins/sqldrivers$ ls
db2    mysql  odbc  qsqldriverbase.pri  sqldrivers.pro  sqlite2         symsql
ibase  oci    psql  README              sqlite          sqlite_symbian  tds



Код

~/QtSDK/QtSources/4.8.0/src/plugins/sqldrivers/oci$ ls
main.cpp  oci.pro  README


Добавлено @ 07:55
Попробовал собрать , благополучно валится. Как я понял не нашел qsqldriverplugin.h
Код

make
g++ -c -pipe -O2 -fvisibility=hidden -fvisibility-inlines-hidden -D_REENTRANT -Wall -W -fPIC -DQT_NO_CAST_TO_ASCII
 -DQT_NO_CAST_FROM_ASCII -DQT_NO_DEBUG -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB 
-I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtSql -I/usr/include/qt4 -I/rdbms/public -I/rdbms/demo -I. -o main.o main.cpp
main.cpp:42:30: fatal error: qsqldriverplugin.h: No such file or directory
compilation terminated.
make: *** [main.o] Error 1


Это сообщение отредактировал(а) Shadowlord - 20.4.2012, 07:56
PM MAIL   Вверх
borisbn
Дата 20.4.2012, 08:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 48
Всего: 135



Чего-то я не пойму. Qt у тебя находится, судя по всему, здесь
Цитата
~/QtSDK/QtSources/4.8.0

а make ищет его здесь
Цитата(Shadowlord @  20.4.2012,  07:44 Найти цитируемый пост)
/usr/include/qt4/QtCore -I/usr/include/qt4/QtSql -I/usr/include/qt4

тебе сначала нужно сделать qmake...

Короче, попробуй в точности, как у тебя было в первом сообщении
Цитата
cd ~/QtSDK/QtSources/4.8.0/src/plugins/sqldrivers/oci
qmake "INCLUDEPATH+=/usr/include/oracle/10.1.0.3/client/" "LIBS+=-L/usr/lib/oracle/10.1.0.3/client/lib -lclntsh" oci.pro
make

только убедись, что SDK Oracle'а установлено здесь
Цитата
/usr/include/oracle/10.1.0.3/client



--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
Shadowlord
Дата 20.4.2012, 09:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 275
Регистрация: 28.11.2006

Репутация: нет
Всего: 5



Как я понял проблемма именно в путях к qt , из-за этого он не может найти qsqldriverplugin.h. 
На сколько я понял дело в qmake, так как выяснилось была установлена еще одна его версия.
Удалил пакет qt4-qmake. теперь он мне говорит что незнает qmake. Осталось найти где прописать путь к qmake который входит в SDK и лежит
~/QtSDK/QtSources/4.8.0

PM MAIL   Вверх
borisbn
Дата 20.4.2012, 09:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 48
Всего: 135



Цитата(Shadowlord @  20.4.2012,  09:53 Найти цитируемый пост)
 Осталось найти где прописать путь к qmake который входит в SDK и лежит
~/QtSDK/QtSources/4.8.0

В венде это
Цитата
PATH=C:/QtSDK/QtSources/4.8.0

В линухе не знаю, но думаю точно так же


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
Shadowlord
Дата 20.4.2012, 13:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 275
Регистрация: 28.11.2006

Репутация: нет
Всего: 5



Продвинулся немного , указав пути. Он нашел ту библиотеку на которыю ругался до этого, но дальше еще раз свалился из-за другой
Код

~/QtSDK/QtSources/4.8.0/src/plugins/sqldrivers/oci# qmake "INCLUDEPATH+=/usr/include/oracle/11.2/client/"
 "LIBS+=-L/usr/lib/oracle/11.2/client/lib -lclntsh" oci.pro
~/QtSDK/QtSources/4.8.0/src/plugins/sqldrivers/oci# make
g++ -c -pipe -O2 -fvisibility=hidden -fvisibility-inlines-hidden
 -D_REENTRANT -Wall -W -fPIC -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -
DQT_NO_DEBUG -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB 
-I/home/test/QtSDK/Desktop/Qt/4.8.0/gcc/mkspecs/default -I. 
-I/home/test/QtSDK/Desktop/Qt/4.8.0/gcc/include/QtCore 
-I/home/test/QtSDK/Desktop/Qt/4.8.0/gcc/include/QtSql
 -I/home/test/QtSDK/Desktop/Qt/4.8.0/gcc/include
 -I/usr/include/oracle/11.2/client -I. -o main.o main.cpp
In file included from main.cpp:44:0:
../../../sql/drivers/oci/qsql_oci.h:47:46: fatal error: QtSql/private/qsqlcachedresult_p.h: No such file or directory
compilation terminated.
make: *** [main.o] Error 1



Это сообщение отредактировал(а) Shadowlord - 20.4.2012, 13:08
PM MAIL   Вверх
Shadowlord
Дата 20.4.2012, 14:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 275
Регистрация: 28.11.2006

Репутация: нет
Всего: 5



Осознал свою ошибку все эти библиотеки есть но лежат не там. а в исходникак.

Код

root@home-ws:/home/test/QtSDK/QtSources/4.8.0/src/sql# ls
drivers  Makefile  pkgconfig    README.module  sql.pro.user
kernel     models    qsqlquery.o    sql.pro


 Попробовал вот так
Код

root@home-ws:/home/test/QtSDK/QtSources/4.8.0/src/plugins/sqldrivers/oci# 
/home/test/QtSDK/QtSources/4.8.0/bin/qmake "INCLUDEPATH+=/usr/include/oracle/11.2/client/" 
"LIBS+=-L/usr/lib/oracle/11.2/client/lib -lclntsh" oci.pro
QMAKESPEC has not been set, so configuration cannot be deduced.
Error processing project file: oci.pro
root@home-ws:/home/test/QtSDK/QtSources/4.8.0/src/plugins/sqldrivers/oci# 


Это сообщение отредактировал(а) Shadowlord - 20.4.2012, 14:04
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets"
JackYF
Любитель
  • В заголовке темы в квадратных скобках обозначьте используемую вами библиотеку, например: [QT],[GTK],[wx].
  • Если вопрос актуален только для некоторой версии библиотеки, либо, если вы пользуетесь не самой последней версией, укажите это. Например: [QT4], [GTK2].
  • Все начинающие изучать Qt - не забудьте зайти сюда.
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • В вопросе укажите полную версию версию библиотеки, а также все дополнительные используемые программные пакеты.
  • Не забывайте пользоваться кнопкой "Код".
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к тематике этого раздела. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема »


 




[ Время генерации скрипта: 0.0878 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.