Russian Qt Forum

Qt => Вопросы новичков => Тема начата: Филомера от Апрель 26, 2015, 12:52



Название: Соединить Qt и Oracle
Отправлено: Филомера от Апрель 26, 2015, 12:52
Здравствуйте.

Мне необходимо подключить проект в Qt к моей БД в Oracle. Как я понимаю, для этого необходим драйвер QOCI. Его у меня нет, но пользуясь http://doc.crossplatform.ru/qt/4.3.5/sql-driver.html#qoci, я пытаюсь собрать его в ручную.

В моем случае код выглядит следующим образом:
Код:
set INCLUDE=%INCLUDE%;D:\oraclexe\app\oracle\product\11.2.0\server\oci\include
     set LIB=%LIB%;D:\oraclexe\app\oracle\product\11.2.0\server\oci\lib\MSVC
     cd D:\Qt\5.3\mingw482_32\plugins\sqldrivers
     qmake oci.pro
     make
После чего я запускаю его в командной строке Q.t 5.3 for Desktop (MinGW 4.8 32bit). До этого я очень редко сталкивалась с командной строкой, так что я просто копирую команды в нее. После чего в папке создается проект, папки debug и release пустые, а так же командная строка ругается на последнюю команду.

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

Версии:
Oracle Database 11g Express Edition
Qt 5.3


Название: Re: Соединить Qt и Oracle
Отправлено: carrygun от Апрель 27, 2015, 05:34
Ошибку бы хоть показали. Подключиться еще можно попробовать через odbc, если есть драйвер в системе и настроено подключение.


Название: Re: Соединить Qt и Oracle
Отправлено: Филомера от Апрель 27, 2015, 17:27
Ошибку бы хоть показали. Подключиться еще можно попробовать через odbc, если есть драйвер в системе и настроено подключение.
Да, о том, что бы показать ошибку я не подумала:
Цитировать
D:\Qt\5.3\mingw482_32>make
"make" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
Разве драйвер odbc (он у меня есть), можно использовать для связи с Orcle?


Название: Re: Соединить Qt и Oracle
Отправлено: gil9red от Апрель 27, 2015, 17:29
Ошибку бы хоть показали. Подключиться еще можно попробовать через odbc, если есть драйвер в системе и настроено подключение.
Да, о том, что бы показать ошибку я не подумала:
Цитировать
D:\Qt\5.3\mingw482_32>make
"make" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
Разве драйвер odbc (он у меня есть), можно использовать для связи с Orcle?

В переменных путях винды нет путь к make, или make вообще не установлен


Название: Re: Соединить Qt и Oracle
Отправлено: Филомера от Апрель 27, 2015, 17:50
В переменных путях винды нет путь к make, или make вообще не установлен

Обычно я пользуюсь графической оболочкой (QtCreator). Не подскажите, как я могу проверить наличие/установить make? Поиск не дал особых результатов, к сожалению. До этого при работе с Qt не возникало никаких проблем.


Название: Re: Соединить Qt и Oracle
Отправлено: gil9red от Апрель 27, 2015, 18:10
В переменных путях винды нет путь к make, или make вообще не установлен

Обычно я пользуюсь графической оболочкой (QtCreator). Не подскажите, как я могу проверить наличие/установить make? Поиск не дал особых результатов, к сожалению. До этого при работе с Qt не возникало никаких проблем.


Я тоже не особо с консолью работаю
Некоторый поиск позволил в закромах qt найти: C:\Qt\5.3.1\Tools\mingw482_32\bin\mingw32-make.exe


Название: Re: Соединить Qt и Oracle
Отправлено: kai666_73 от Апрель 27, 2015, 19:38
Разве драйвер odbc (он у меня есть), можно использовать для связи с Orcle?
Можно, проверено. Но нужно ставить оракловый ODBC драйвер, настраивать DNS и.п.т.

Но я все же рекомендую побороть родной для Oracle OCI.
Ошибку вы все еще не показали. Но есть нюанс, очевидный на текущий момент...
Вы собираете драйвер мингвой. А потому нужно оракловые lib-ы преобразовать в понятные мингву a-шки...
В google полно статей описывающих этот процесс )
Например:
http://www.drdobbs.com/porting-oracle-cc-code-with-mingw/184416611
следует обратить внимание на dlltool...


Название: Re: Соединить Qt и Oracle
Отправлено: carrygun от Апрель 28, 2015, 05:38
D:\Qt\5.3\mingw482_32>make
"make" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
Добавьте путь до make в переменные среды в свойствах компьютера, или напишите в консоли перед командой make:
Код:
set PATH = %PATH%;C:\Qt\5.3.1\Tools\mingw482_32\bin\
Путь, естественно, ваш.


Название: Re: Соединить Qt и Oracle
Отправлено: lesav от Июнь 02, 2015, 22:45
Родной драйвер успешно собирается

в oci.pro  добавить строки

Код:
LIBS        += -L$$PWD/oci/lib/msvc
INCLUDEPATH += $$PWD/oci/include


http://Lesav.ru/Qt/oci-dev.7z