[РЕШЕНО] Драйвер Oracle-OCI для Qt (Linux Kubuntu 9.10), Как скомпилировать драйвер oracle для Qt |
Здравствуйте, гость ( Вход | Регистрация )
[РЕШЕНО] Драйвер Oracle-OCI для Qt (Linux Kubuntu 9.10), Как скомпилировать драйвер oracle для Qt |
Oleg S. Plesser |
26.11.2009, 11:08
Сообщение
#1
|
Студент Группа: Новичок Сообщений: 18 Регистрация: 12.12.2007 Из: Московская область Пользователь №: 41 Спасибо сказали: 4 раз(а) Репутация: 0 |
скачал
qt-x11-opensource-src-4.5.3.tar.gz дальше по инструкции из qt-assistant 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 -Wl,-rpath,/usr/lib/oracle/10.1.0.3/client/lib -lclntsh -lnnz10" oci.pro make в моем случае cat $ORACLE_HOME cat: /usr/lib/oracle/xe/app/oracle/product/10.2.0/server: Is a directory cd /home/swift/Tmp/qt-x11-opensource-src-4.5.3/src/sql/drivers/oci qmake -project (у меня нет oci.pro) qmake "INCLUDEPATH+=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server" "LIBS+=-L/usr/lib/oracle/xe/app/oracle/product/10.2.0/server -Wl,-rpath,/usr/lib/oracle/10.1.0.3/client/lib -lclntsh -lnnz10" oci.pro (у меня стоит oracle XE) ------ прописал в make include исходников -I/home/swift/Tmp/qt-x11-opensource-src-4.5.3/include ------ make и получаю g++ -c -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/home/swift/Tmp/qt-x11-opensource-src-4.5.3/include/QtSql -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I/usr/lib/oracle/xe/app/oracle/product/10.2.0/server -I. -I. -o qsql_oci.o qsql_oci.cpp In file included from qsql_oci.cpp:42: qsql_oci.h:47:46: error: QtSql/private/qsqlcachedresult_p.h: No such file or directory qsql_oci.cpp:59:17: error: oci.h: No such file or directory In file included from qsql_oci.cpp:42: qsql_oci.h:68: error: expected class-name before ‘{’ token qsql_oci.h:80: error: ‘ValueCache’ has not been declared qsql_oci.cpp:80: error: ‘OCIStmt’ was not declared in this scope qsql_oci.cpp:80: error: template argument 1 is invalid qsql_oci.cpp:90: error: ‘ub1’ does not name a type qsql_oci.cpp:91: error: ‘ub2’ does not name a type qsql_oci.cpp:93: error: ‘sb2’ was not declared in this scope qsql_oci.cpp:93: error: template argument 1 is invalid ****************** конечно можно начать шаманить и править ссылки на header файлы но что то мне подсказывает что можно как то более просто решить сей проблему.... вопрос как? |
|
|
Litkevich Yuriy |
26.11.2009, 18:27
Сообщение
#2
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
Заходим в него и находим строчку которая начинается с INCPATH по идее этот путь должен присутствовать в pro-файле, может что-то не так с pro-файлом?Наша задача указать что лежат заголовочные файлы входящие в исходники. В моем случае это вылилось в добавление туда следующей строки -I/home/swift/Tmp/qt-x11-opensource-src-4.5.2/include Затем необходимо переписать hash динамических библиотек. Это делается с помощью команды ldconfig. вот это бы тоже объяснить, я никогда с таким инструментом не сталкивался, как ldconfig(у меня нет oci.pro) а вто это важный момент в архиве qt-all-opensource-src он есть:oci.pro
|
|
|
Текстовая версия | Сейчас: 28.11.2024, 21:25 |