Название: Проблема с компиляцией OCI Plugin Отправлено: кып от Июнь 11, 2009, 16:35 Исходные данные:
window xp sp3 qt4.5.1 MinGW - установка по умолчанию. oracle client 10.2.0.1 Пытаюсь собрать oci plugin. Делаю все по документации: Код: set INCLUDE=%INCLUDE%;D:\oracle\product\10.2.0\client_1\oci\include Код: C:/Qt/4.5.1/src/plugins/sqldrivers/oci/tmp/moc/debug_shared/moc_qsql_oci.cpp:53: undefined reference и заканчивается это так Код: collect2: ld returned 1 exit status !!! У меня установлено довольно много всякого софта, может что-то мешает? хотя я из путей убирал все не относящееся к делу. А если я делаю то же самое на пустой оси(только qt и oracle client) то все работает. Ну и собственно вопрос: Что это такое? И как это побороть? Название: Re: Проблема с компиляцией OCI Plugin Отправлено: White Owl от Июнь 12, 2009, 17:27 Делаю все по документации: Во первых, лучше делать:Код: set INCLUDE=%INCLUDE%;D:\oracle\product\10.2.0\client_1\oci\include Код: set INCLUDE=D:\oracle\product\10.2.0\client_1\oci\include;%INCLUDE% В результате выводится очень много(строк 300) непонятно чего вида: Вместо make, сделайКод: make 2>err Название: Re: Проблема с компиляцией OCI Plugin Отправлено: кып от Июнь 15, 2009, 13:12 Вместо make, сделай Код: make 2>err С путями вроде все правильно. Что оно в err выводит мне пока ну совсем не ясно. Хотя по последнему сообщению понятно что проблема какая-то с линковкой. За выходные проделал то-же самое на трех компах, везде все замечательно работает. А на работе вот такая фигня. И вот попробовал еще под posgresql драйвер собрать, те же самые грабли. Прилагаю файл с ошибками, может кто сможет мне помочь. Название: Re: Проблема с компиляцией OCI Plugin Отправлено: mbb от Июнь 15, 2009, 15:41 Мне "мешал" борландовский make.exe из Дельфей, в пути был раньше. Переименовал его.
Тоже была куча жутких сообщений. Название: Re: Проблема с компиляцией OCI Plugin Отправлено: кып от Июнь 15, 2009, 15:57 Мне "мешал" борландовский make.exe из Дельфей, в пути был раньше. Переименовал его. Тоже была куча жутких сообщений. Это я в первую очередь сделал. А в путях у меня только C:\MinGW\bin и C:\Qt4.5.1\bin и все одно. Я думал что с оракловым клиентом какая-то байда, а оказалось что и с постгре то-же самое. Название: Re: Проблема с компиляцией OCI Plugin Отправлено: White Owl от Июнь 15, 2009, 18:27 С путями вроде все правильно. Вот как раз с путями у тебя и проблема.Что оно в err выводит мне пока ну совсем не ясно. Хотя по последнему сообщению понятно что проблема какая-то с линковкой. Смотри начало списка ошибок. Первые пять строк это предупрежедния от компилятора, в данном случае их можно проигнорировать. В шестой строке уже идет сообщение от линкера - что он начинает собирать библиотеку импорта для твоей dll и при этом напоролся на следующие ошибки... и дальше идет сотня строк с ошибками. Нам более всего интересны первые строки: Код: tmp/obj/debug_shared/main.o(.text+0x115): In function `ZN16QOCIDriverPluginC2Ev': Название: Re: Проблема с компиляцией OCI Plugin Отправлено: кып от Июнь 16, 2009, 10:26 [Спрашивается, почему линкер не смог найти эту библиотеку? Если бы я знал почему он не находит ничего :( Сегодня с утра еще раз попробовал, так вообще мистика какая-то началась. Если еще вчера qmake создавал кроме make-файлов еще структуру каталогов tmp\ moc\ debug_shared\ release_shared\ obj\ debug_shared\ release_shared\ то сегодня создается два каталога debug и release а последующий запуск make не находит oci.h, хотя она никуда не делась. Название: Re: Проблема с компиляцией OCI Plugin Отправлено: кып от Июнь 16, 2009, 15:56 Сегодня еще пробовал установить все это дела еще на двух физических компах и одном виртуальном. Все везде прекрасно собирается.
Короче плюнул я на это дело и просто скопировал библиотеки с рабочей версии. И что-бы не заводить новую тему спрошу здесь. А какие мои должны быть ПРАВИЛЬНЫЕ действия, чтобы сделать то-же самое под ubuntu? Исходные данные: Ubuntu 9.04 Qt4.5.1 Oracle 10.2.0.4 Instant client Qt собрана с опциями по умолчанию из исходников. oracle client установлен ручками по мануалу найденному в интернете и работает, по крайней мере sqlplus замечательно подключается. Далее смотрю мануал о сборке плагина: cd $QTDIR/src/plugins/sqldrivers/oci Насколько я понимаю $QTDIR это где у меня установлена Qt (в моем случае /usr/local/Trolltech/Qt4.5.1), но во только там у меня каталога src нету. Пытаюсь собирать плагин из того места где сама библиотека собиралась и тут появляются такие грабли: в файле qsql_oci.h есть такая строчка #include <QtSql/private/qsqlcachedresult_p.h> Компилятор хочет найти этот файл там где Qt установлена, что естсественно, но в каталоге /usr/local/Trolltech/Qt4.5.1 /include/QtSql отсутствует подкаталог private. Что я делаю не так? Заранее спасибо за ответ. Название: Re: Проблема с компиляцией OCI Plugin Отправлено: GrHnd от Октябрь 02, 2009, 14:25 Мне "мешал" борландовский make.exe из Дельфей, в пути был раньше. Переименовал его. А где взять нормальный make под Windows XP?Тоже была куча жутких сообщений. |