crossplatform.ru

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


  Ответ в Драйвера SQL + Qt (Win32)
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
PavelDart Дата 29.11.2009, 23:59
  iddqd, чего-то нового ожидать было бессмысленно. Всё равно, спасибо.
iddqd Дата 29.11.2009, 20:56
 
Цитата(PavelDart @ 27.11.2009, 22:54) *
Litkevich Yuriy, спасибо, интересно прочитать комментарии iddqd.


В принципе всё описано в постах #1 и #6. Если по шагам, то получится примерно вот так:

1. Качаем qt-sdk-win-opensource-2009.04, ставим его, в комплекте идёт IDE Qt Creator

2.
a) Если есть CD c инсталлером Oracle, то ставим Oracle Client с диска, при установке выбираем Custom и отмечаем опцию Oracle Programmer
b) Если диска нет, но есть, например, Oracle Instant Client 10й или 11й версии, то распаковываем его в любое место и запоминаем путь

3. Открываем в Qt Creator файл путь_до_qt\2009.04\qt\src\plugins\sqldrivers\oci\oci.pro, дописываем в него две строки:

- для Oracle 9:
INCLUDEPATH+=c:\oracle9\oci\include
LIBS+=-Lc:\oracle9\oci\lib\msvc

- для Oracle InstantClient 11:
INCLUDEPATH+=c:\instantclient_11_1\sdk\include
LIBS+=-Lc:\instantclient_11_1\sdk\lib\msvc


4. Собираем проект, получаем драйвер. Копируем полученные при сборке файлы qsqloci4.dll и libqsqloci4.a для release сборки (для debug - qsqlocid4.dll и libqsqlocid4.a) в папку путь_до_qt\2009.04\qt\plugins\sqldrivers\.
Всё, драйвер собран и готов к использованию.

5. Не забываем о том, что для запуска на другом компе нам нужно скопировать в папку с нашей программой файл oci.dll (из состава самого Oracle Client'a), также создать в папке с нашей прогой папку sqldrivers и скопировать туда файл qsqloci4.dll.
PavelDart Дата 27.11.2009, 22:54
  Litkevich Yuriy, спасибо, интересно прочитать комментарии iddqd.
Litkevich Yuriy Дата 27.11.2009, 20:45
 
Цитата(Гость_PavelDart_* @ 27.11.2009, 23:35) *
из каких исходников были собраны драйвера
исходники QOCI смотри в архиве Qt для всех платформ (qt-all-opensource-src-*) на FTP тролей :
ftp://ftp.trolltech.com/qt/source/

в архивах под конкретную плаформу X11 или Win их нет
PavelDart Дата 27.11.2009, 20:35
  iddqd, а можно по-подробнее про сборку драйвера для OCI.
Жутко интересно, из каких исходников были собраны драйвера, у меня есть исходники вот отсюда только толку от них мало, скорее наверное, от меня.) Ещё интересно взглянуть на эти исходники. Ну и что бы сориентироваться, в правильности моих действий, приведите пожалуйста, список Ваших действий.
iddqd Дата 27.11.2009, 16:53
 
Цитата(Litkevich Yuriy @ 27.11.2009, 14:56) *
Пример - тот же Делфи, дистрибутив содержит кучу всего, но эту кучу можно установить одной программой установки.

Т.е. делаешь дистриб, который устанавливает и клиент Оракла и твою программу, ВАЖНО: для пользователя процесс установки должен быть простой, тогда ему неважно сколько dll'ок будет установлено.


В том-то и дело, нет желания делать дистрибы и ставить клиента к каждому юзеру на комп. Софт только для внутреннего использования. В Delphi моя программа компилируется в один единственный exe'шник (и работает свободно на любом компе, соединяясь с сервером в сети) и я хочу, хотя бы приближённо, сделать то же самое на Qt (я имею в виду static сборки) или согласен даже на shared сборки с набором либ кьюта, но ставить ещё и Oracle Client каждый раз - такой вариант не катит, к сожалению...
Litkevich Yuriy Дата 27.11.2009, 14:56
 
Цитата(iddqd @ 27.11.2009, 17:44) *
к чему в итоге пришли.
все приходят к одному и тому же:
Моя программа - моя программа, а её зависимости - неизбежные зависимости.

Пример - тот же Делфи, дистрибутив содержит кучу всего, но эту кучу можно установить одной программой установки.

Т.е. делаешь дистриб, который устанавливает и клиент Оракла и твою программу, ВАЖНО: для пользователя процесс установки должен быть простой, тогда ему неважно сколько dll'ок будет установлено.
iddqd Дата 27.11.2009, 14:44
  По большому счёту всё верно.

Посмотрим, может кто-нибудь ещё сталкивался с такой проблемой и опишут, к чему в итоге пришли.
Litkevich Yuriy Дата 27.11.2009, 14:38
  iddqd, я думаю имей ты комерческую лицензию Qt троли бы тебе помогли с этим. А у Дельфей вообще нет халявной лицензии (LGPL), следовательно и сравнивать нужно с комерческой Qt.
iddqd Дата 27.11.2009, 14:36
  Если так, то это очень и очень плохо... А с "вкомпиливанием" вообще не вариант... Хм, на Delphi-то написали, работает без клиента. Нужели на Qt такого не получится сделать :scratch_one-s_head:
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 29.3.2024, 5:16