今天用centos7安装oracle11g时,不知oracle11g 的rpm依赖包版本较高,还是centos7的原因,在进行安装的时候,日志/home/db/oracle/oraInventory/logs/installActions2016-04-11_10-35-32PM.log报以下错误:
INFO: /usr/bin/ld: warning: -z lazyload ignored.
/usr/bin/ld: warning: -z nolazyload ignored.
/usr/bin/ld: /home/db/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 /home/db/oracle/product/11.2.0/db_1/lib/libnnz11.so so try adding it to the linker command line
/home/db/oracle/product/11.2.0/db_1/lib/libnnz11.so: could not read symbols: Invalid operation
collect2: error: ld returned 1 exit sta
INFO: tus
INFO: make[1]: Leaving directory `/home/db/oracle/product/11.2.0/db_1/sysman/lib'
INFO: make[1]: *** [/home/db/oracle/product/11.2.0/db_1/sysman/lib/emdctl] Error 1
make: *** [emdctl] Error 2
INFO: End output from spawned process.
INFO: ----------------------------------
INFO: Exception thrown from action: make
在网上找寻的办法是
vim /home/db/oracle/product/11.1.0/db_1/sysman/lib/ins_emagent.mk #找到如下内容后 $(SYSMANBIN)emdctl: $(MK_EMAGENT_NMECTL) 进行修改为如下 $(SYSMANBIN)emdctl: $(MK_EMAGENT_NMECTL) -lnnz11
然后重新编译ins_emagent.mk
make -f ins_emagent.mk "agent"
重新安装不会再出现以上问题。