Ошибка компоновщика при установке Oracle 11g на Fedora 18

8053
rsjethani

Я должен преподавать программирование базы данных против БД Oracle, используя C / C ++ в Linux. Итак, первый шаг - установить Oracle 11g в Linux.

Конфигурация компьютера: ВЕДУЩИЙ: 64-разрядная версия Windows 8 Enterprise Гость: 32-разрядная версия Fedora 18 XFCE с использованием Virtual Box 4.2.10

Я использую эту ссылку в качестве руководства.

Я выполнил все шаги до шага «./runInstall», где я получаю сообщение об ошибке на этапе компоновки:

Ниже приводится выдержка из файла журнала в «/ u01 / app / oraInventory / logs»:

[oracle@localhost logs]$ tail -n 25 installActions2013-03-31_03-14-24PM.log  INFO: /usr/bin/ld: warning: -z lazyload ignored.  /usr/bin/ld: warning: -z nolazyload ignored. /usr/bin/ld: /u01/app/oracle/product/11.2.0/db_1/sysman/lib//libnmectl.a(nmectlt.o): undefined reference to symbol 'B_DestroyKeyObject' /usr/bin/ld: note: 'B_DestroyKeyObject' is defined in DSO /u01/app/oracle/product/11.2.0/db_1/lib/libnnz11.so so try adding it to the linker command line /u01/app/oracle/product/11.2.0/db_1/lib/libnnz11.so: could not read symbols: Invalid operation  INFO: collect2: error: ld returned 1 exit status  INFO: make[1]: *** [/u01/app/oracle/product/11.2.0/db_1/sysman/lib/emdctl] Error 1  INFO: make[1]: Leaving directory `/u01/app/oracle/product/11.2.0/db_1/sysman/lib'  INFO: make: *** [emdctl] Error 2  INFO: End output from spawned process. INFO: ----------------------------------  INFO: Exception thrown from action: make Exception Name: MakefileException Exception String: Error in invoking target 'agent nmhs' of makefile '/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk'. See '/u01/app/oraInventory/logs/installActions2013-03-31_03-14-24PM.log' for details. Exception Severity: 1 INFO: Adding ExitStatus STOP_INSTALL to the exit status set INFO: Finding the most appropriate exit status for the current application INFO: Exit Status is -4 INFO: Shutdown Oracle Database 11g Release 2 Installer  INFO: Unloading Setup Driver [oracle@localhost logs]$ 

Как исправить эту ошибку?

Есть ли другие способы показать программирование БД Oracle с использованием c ++?

Дайте мне знать, если нужна какая-либо другая информация.

2

2 ответа на вопрос

5
Anoop Giani

Do the following:

  1. run vi $ORACLE_HOME/sysman/lib/ins_emagent.mk
  2. Search for the line: $(MK_EMAGENT_NMECTL)
  3. Change it to: $(MK_EMAGENT_NMECTL) -lnnz11
хорошо, я попробую это спасибо. rsjethani 10 лет назад 0
1
vonbrand

Oracle на Fedora не поддерживается, AFAIU. Может быть, вам повезет больше с CentOS . Поскольку этот Linux и собственный Oracle являются клонами Red Hat Enterprise Linux, вам, вероятно, повезет больше, если вы найдете людей, которые уже сделали это.

В любом случае, мой опыт (к счастью, давным- давно, но несколько надежные слухи говорят, что ничего особенного не изменилось) заключается в том, что установка Oracle - это ужасное испытание. «Сценарии автоматической установки» сильно нарушены, а официальные инструкции предназначены для совершенно другого программного пакета. Существуют всевозможные странные переменные среды, которые должны быть установлены правильно (но не задокументированы), чтобы что-то работало.