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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: QT(любая версия) и Oracle  (Прочитано 7109 раз)
TukiNov
Гость
« : Октябрь 29, 2006, 02:07 »

Приветствую всех.
Тут появилась необходимость написать прогу под линь, которая будет работать с дб ораклом(а именно на диплом Улыбающийся). Вопрос : как собрать драйвер ?
как указано в ассистенте не получается.
Сам делаю так :
скопировал инклуды оракла в папку qt/include
Код:

-rw-r--r-- 1 root root  33230 2006-02-05 08:50 nzerror.h
-rw-r--r-- 1 root root  85310 2006-02-05 08:50 nzt.h
-rw-r--r-- 1 root root  11600 2006-02-05 08:50 occiAQ.h
-rw-r--r-- 1 root root  38724 2006-02-05 08:50 occiCommon.h
-rw-r--r-- 1 root root  73063 2006-02-05 08:50 occiControl.h
-rw-r--r-- 1 root root  35218 2006-02-05 08:50 occiData.h
-rw-r--r-- 1 root root   2115 2006-02-05 08:50 occi.h
-rw-r--r-- 1 root root  29156 2006-02-05 08:50 occiObjects.h
-rw-r--r-- 1 root root   7155 2006-02-05 08:50 oci1.h
-rw-r--r-- 1 root root  10361 2006-02-05 08:50 oci8dp.h
-rw-r--r-- 1 root root 410791 2006-02-05 08:50 ociap.h
-rw-r--r-- 1 root root   6055 2006-02-05 08:50 ociapr.h
-rw-r--r-- 1 root root  43225 2006-02-05 08:50 ocidef.h
-rw-r--r-- 1 root root   4014 2006-02-05 08:50 ocidem.h
-rw-r--r-- 1 root root  11331 2006-02-05 08:50 ocidfn.h
-rw-r--r-- 1 root root   8954 2006-02-05 08:50 ociextp.h
-rw-r--r-- 1 root root 150915 2006-02-05 08:50 oci.h
-rw-r--r-- 1 root root   6638 2006-02-05 08:50 ocikpr.h
-rw-r--r-- 1 root root   4351 2006-02-05 08:50 ocixmldb.h
-rw-r--r-- 1 root root  19099 2006-02-05 08:50 odci.h
-rw-r--r-- 1 root root   6605 2006-02-05 08:50 oratypes.h
-rw-r--r-- 1 root root  15031 2006-02-05 08:50 orid.h
-rw-r--r-- 1 root root 102726 2006-02-05 08:50 ori.h
-rw-r--r-- 1 root root 157674 2006-02-05 08:50 orl.h
-rw-r--r-- 1 root root  42626 2006-02-05 08:50 oro.h
-rw-r--r-- 1 root root 116591 2006-02-05 08:50 ort.h
-rw-r--r-- 1 root root   9520 2006-02-05 08:50 xa.h

скопировал lib в папку qt/lib
Код:

lrwxrwxrwx 1 root root       17 2006-10-28 17:41 libclntsh.so -> libclntsh.so.10.1*
-rwxr-xr-x 1 root root 18715358 2006-06-13 20:01 libclntsh.so.10.1*
-rwxr-xr-x 1 root root  5623881 2006-02-05 08:50 libnnz10.so*
lrwxrwxrwx 1 root root       15 2006-10-28 17:41 libocci.so -> libocci.so.10.1*
-rwxr-xr-x 1 root root  1396604 2006-02-05 08:50 libocci.so.10.1*
-rwxr-xr-x 1 root root  4279056 2006-06-13 20:01 libociicus.so*
-rwxr-xr-x 1 root root   119871 2006-02-05 08:50 libocijdbc10.so*

делаю qmake -project && qmake oci.pro && make
получаю
Код:

tuki-tuki@linux:~> cd Program_files/qt/plugins/src/sqldrivers/oci/
tuki-tuki@linux:~/Program_files/qt/plugins/src/sqldrivers/oci> qmake -project
tuki-tuki@linux:~/Program_files/qt/plugins/src/sqldrivers/oci> qmake oci.pro
tuki-tuki@linux:~/Program_files/qt/plugins/src/sqldrivers/oci> make
g++ -Wl,-rpath,/usr/lib/qt3/lib/ -o oci .obj/release-shared/qsql_oci.o    -L/usr/lib/mysql/ -L/home/tuki-tuki/Program_files/qt/lib -L/usr/X11R6/lib -L/usr/X11R6/lib -lqt -lGLU -lGL -lXmu -lXrender -lXrandr -lXcursor -lXinerama -lXft -lfreetype -lfontconfig -lXext -lX11 -lm -lSM -lICE -ldl
collect2: ld returned 1 exit status
make: *** [oci] Ошибка 1
tuki-tuki@linux:~/Program_files/qt/plugins/src/sqldrivers/oci >

по ассистенту почти тоже самое :
Код:

tuki-tuki@linux:~/Program_files/qt/plugins/src/sqldrivers/oci> cat run
#!/bin/sh
qmake -o Makefile "INCLUDEPATH+=-I/opt/oracle/instantclient_10_2/sdk/include" "LIBS+=-L/opt/oracle/lib -lclntsh" oci.pro
tuki-tuki@linux:~/Program_files/qt/plugins/src/sqldrivers/oci> sh run
tuki-tuki@linux:~/Program_files/qt/plugins/src/sqldrivers/oci> make
g++ -Wl,-rpath,/usr/lib/qt3/lib/ -o oci .obj/release-shared/qsql_oci.o    -L/usr/lib/mysql/ -L/home/tuki-tuki/Program_files/qt/lib -L/usr/X11R6/lib -L/usr/X11R6/lib -L/opt/oracle/lib -lclntsh -lqt -lGLU -lGL -lXmu -lXrender -lXrandr -lXcursor -lXinerama -lXft -lfreetype -lfontconfig -lXext -lX11 -lm -lSM -lICE -ldl
collect2: ld returned 1 exit status
make: *** [oci] Ошибка 1
tuki-tuki@linux:~/Program_files/qt/plugins/src/sqldrivers/oci>

Что делаю не так ?
полностью оракл не ставил, нашел только этот пакет : oracle-instantclient-10.2.0.2-2.1.i586.rpm, может не он ?.
Так же пробовал собрать его в винде, делал точно также, все инклуды принял bcb, только спросил про OCI.LIB

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

 чуть подумав, и пошарив по инету, скачал оракл и вытащил от туда три папки, которые упоминаются в ассистенте, вот что получил :
Код:

tuki-tuki@linux:~/Program_files/qt/plugins/src/sqldrivers/oci> make
g++ -Wl,-rpath,/usr/lib/qt3/lib/ -o oci .obj/release-shared/qsql_oci.o    -L/usr/lib/mysql/ -L/home/tuki-tuki/Program_files/qt/lib -L/usr/X11R6/lib -L/usr/X11R6/lib -L/home/tuki-tuki/oci/lib -lclntsh -lqt -lGLU -lGL -lXmu -lXrender -lXrandr -lXcursor -lXinerama -lXft -lfreetype -lfontconfig -lXext -lX11 -lm -lSM -lICE -ldl
/usr/lib/gcc/i586-suse-linux/4.1.0/../../../crt1.o: In function `_start':
init.c:(.text+0x18): undefined reference to `main'
collect2: ld returned 1 exit status
make: *** [oci] Ошибка 1
tuki-tuki@linux:~/Program_files/qt/plugins/src/sqldrivers/oci>
Записан
Admin
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1988



Просмотр профиля
« Ответ #1 : Октябрь 29, 2006, 09:58 »

Когда я с ораклом возился что ставил 9i версию полную

По твоим логами не понятно где ошибка, надо указать gcc что бы выводил больше информации. Но ключи к сожалению не помню!
Записан
TukiNov
Гость
« Ответ #2 : Октябрь 29, 2006, 13:29 »

я вот не понимаю что такое ODBC. С помощью этого драйвера я смого приконектится к Ораклу 9i ?

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

 
Цитата: "Admin"
Когда я с ораклом возился что ставил 9i версию полную

По твоим логами не понятно где ошибка, надо указать gcc что бы выводил больше информации. Но ключи к сожалению не помню!

вот и последние строки лога :
Код:

Получен сигнал SIGCHLD; 1 потомков с необработанными результатами.
Подбираю удачно завершившегося потомка 0x08088710 PID 5221
Removing child 0x08088710 PID 5221 from chain.
      Целевой файл `.obj/release-shared/qsql_oci.o' успешно пересоздан.
     Обновление целей, от которых зависит целевой файл `oci', завершено.
    Необходимо пересобрать цель `oci'.
g++ -Wl,-rpath,/usr/lib/qt3/lib/ -o oci .obj/release-shared/qsql_oci.o    -L/usr/lib/mysql/ -L/home/tuki-tuki/Program_files/qt/lib -L/usr/X11R6/lib -L/usr/X11R6/lib -L/home/tuki-tuki/oci/lib -lclntsh -lc -lqt -lGLU -lGL -lXmu -lXrender -lXrandr -lXcursor -lXinerama -lXft -lfreetype -lfontconfig -lXext -lX11 -lm -lSM -lICE -ldl
Помещение потомка 0x08088a88 (oci) PID 5225 в цепочку активных потомков.
Незавершенный потомок 0x08088a88 (oci) PID 5225
collect2: ld returned 1 exit status
Получен сигнал SIGCHLD; 1 потомков с необработанными результатами.
Подбираю неудачно завершившегося потомка 0x08088a88 PID 5225
make: *** [oci] Ошибка 1
Removing child 0x08088a88 PID 5225 from chain.
tuki-tuki@linux:~/Program_files/qt/plugins/src/sqldrivers/oci>


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

 млин, чё то я теперь вообще ничего не понимаю. создал файл main.cpp с пустой int main(){}, компиляция завершилась. но вот он мне собрал исполняемый файл Грустный.
Повторю вопрос : я вот не понимаю что такое ODBC. С помощью этого драйвера я смого приконектится к Ораклу 9i ?
Записан
Steven_Orko
Гость
« Ответ #3 : Октябрь 29, 2006, 13:44 »

Цитата: "TukiNov"

Повторю вопрос : я вот не понимаю что такое ODBC. С помощью этого драйвера я смого приконектится к Ораклу 9i ?


А поиском по вебу ВАМ РЕЛИГИЯ НЕ ПОЗВОЛЯЕТ пользоваться??? Эта тема на просторах сети обсуждалась несколько тысяч раз, если не больше. В каждой книжке по базам данных имеется ответ на этот вопрос. К тому же ВАШ вопрос ЯВНО НЕ ИМЕЕТ отношения к Qt. Так позвольте узнать ваши мотивации?
Записан
TukiNov
Гость
« Ответ #4 : Октябрь 29, 2006, 14:30 »

Цитата: "Steven_Orko"
Цитата: "TukiNov"

Повторю вопрос : я вот не понимаю что такое ODBC. С помощью этого драйвера я смого приконектится к Ораклу 9i ?


А поиском по вебу ВАМ РЕЛИГИЯ НЕ ПОЗВОЛЯЕТ пользоваться??? Эта тема на просторах сети обсуждалась несколько тысяч раз, если не больше. В каждой книжке по базам данных имеется ответ на этот вопрос. К тому же ВАШ вопрос ЯВНО НЕ ИМЕЕТ отношения к Qt. Так позвольте узнать ваши мотивации?

Чего ?
я весь гугл перерыл, в отличие от многих я всегда сначало в инете ищу !. А то что прога пишется на Qt под оракл это не имеет отношения к Qt НепонимающийНепонимающий??. Из всего поста только к этим двум строчкам придрались ? я задал конкрентный вопрос : С помощью этого драйвера я смого приконектится к Ораклу 9i ? / Если нет ответа на него то лучше вообще ничего не писать.
Записан
Steven_Orko
Гость
« Ответ #5 : Октябрь 29, 2006, 16:52 »

Уважаемый!!! Правильно заданный вопрос - половина ответа!!! Пройдитесь по ссылке http://www.yandex.ru/yandsearch?text=ODBC+%F7%F2%EE+%F2%E0%EA%EE%E5%3F&stype=www


Ответ на Ваш вопрос: "С помощью этого драйвера я смогу приконектится к Ораклу 9i" - "Да, и не только к БД под Oracle, но и под другими СУБД." Это также демострирует эта ссылка http://www.yandex.ru/yandsearch?text=Oracle+9i+ODBC&stype=www
Записан
TukiNov
Гость
« Ответ #6 : Октябрь 30, 2006, 16:02 »

так. нарисовалась такая проблема :
Код:

tuki-tuki@linux:~/Program_files/qt/plugins/src/sqldrivers/oci> make
g++ -Wl,-rpath,/usr/lib/qt3/lib/ -o oci .obj/release-shared/qsql_oci.o    -L/usr/lib/mysql/ -L/home/tuki-tuki/Program_files/qt/lib -L/usr/X11R6/lib -L/usr/X11R6/lib -L/home/tuki-tuki/oci/lib -lclntsh -lqt -lGLU -lGL -lXmu -lXrender -lXrandr -lXcursor -lXinerama -lXft -lfreetype -lfontconfig -lXext -lX11 -lm -lSM -lICE -ldl
/usr/lib/gcc/i586-suse-linux/4.1.0/../../../crt1.o: In function `_start':
init.c:(.text+0x18): undefined reference to `main'
collect2: ld returned 1 exit status
make: *** [oci] Ошибка 1
tuki-tuki@linux:~/Program_files/qt/plugins/src/sqldrivers/oci>

делаю так :
qmake -project
qmake -o Makefile "INCLUDEPATH+=-I/home/tuki-tuki/oci/public /home/tuki-tuki/oci/demo" "LIBS+=-L/home/tuki-tuki/oci/lib -lclntsh" oci.pro
make
Такая же ситуация выресовавается если я пытаюсь собрать таким способом mysql-плагин(хотя при начальной сборке плагин собрался на ура).
Что я делаю не так ?
вроде делаю всё как в ассистенте написано.

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

 тьфу, жестоко тупил Улыбающийся
в oci.pro, в TEMPLATE бло прописано app Улыбающийся
плагин собрался, терь вот что выдаёт :
Код:

Conflict in /usr/lib/qt3/plugins/sqldrivers/liboci.so
Plugin connot be quiried successfully!


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

 да, вообще я то что нужно собрал ? Улыбающийся

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

 уф, я ещё больше тупил Улыбающийся Просто пересобрал всю библиотеку Qt, и драйвер сам подхватился Улыбающийся
Всем спасибо за помощь Улыбающийся
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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