在linux4 64位安装oracle 10g时e2eme报错,详细的日志如下:
INFO: reference to `ldxnbeg'
/app/oracle/product/10/db_1/lib32//libnls10.a(lxecg2i.o)(.text+0x231): In function `lxecg2i':
: undefined reference to `ldxdtd'
/app/oracle/product/10/db_1/lib32//libnls10.a(lxecg2i.o)(.text+0x314): In function `lxecg2i':
: undefined reference to `ldxnbeg'
/app/oracle/product/10/db_1/lib32//libnls10.a(lxecg2i.o)(.text+0x340): In function `lxecg2i':
: undefined reference to `ldxdfd'
/app/oracle/product/10/db_1/lib32//libnls10.a(lxecg2l.o)(.text+0x13f): In function `lxecg2l':
: undefine
INFO: d reference to `ldxnbeg'
/app/oracle/product/10/db_1/lib32//libnls10.a(lxecg2l.o)(.text+0x16f): In function `lxecg2l':
: undefined reference to `ldxdtd'
/app/oracle/product/10/db_1/lib32//libnls10.a(lxecg2l.o)(.text+0x48b): In function `lxecg2l':
: undefined reference to `ldxnbeg'
/app/oracle/product/10/db_1/lib32//libnls10.a(lxecg2l.o)(.text+0x4b7): In function `lxecg2l':
: undefined reference to `ldxdfd'
/app/oracle/product/10/db_1/lib32//libunls10.a(lxu4tstc.o)(.text+0x8b4): In function `lxu4TstClsXMLPub
INFO: idChar0':
: undefined reference to `lxpTstClsXMLPubidCharTbl'
/app/oracle/product/10/db_1/lib32//libunls10.a(lxu4dec.o)(.text+0x18b): In function `lxu4Decomposition':
: undefined reference to `lxujmd'
collect2: ld returned 1 exit status
make[1]: *** [/app/oracle/product/10/db_1/sysman/lib/e2eme] Error 1
make: *** [e2eme] 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 nmo nmb' of makefile '/app/oracle/product/10/db_1/sysman/lib/ins_sysman.mk'. See '/app/oracle/oraInventory/logs/installActions2011-07-08_09-25-48PM.log' for details.


解决方法

1,检查需要的包有没有完全安装

rpm -q binutils compat-db control-center gcc gcc-c++ glibc glibc-common \
gnome-libs libstdc++ libstdc++-devel make pdksh sysstat xscreensaver libaio openmotif21
2,检查内核参数有没有添加,有没有错误
查看或者编辑 /etc/sysctl.conf文件

kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=262144
net.core.rmem_max=262144
net.core.wmem_default=262144
net.core.wmem_max=262144

运行如下命令,是内核参数生效
/sbin/sysctl -p

3,查看SElinux的配置,SElinux需要处于disabled状态
查看或者编辑/etc/selinux/config文件,确认存在如下内容
SELINUX=disabled
4,检查安装oracle软件用户的环境变量
以oracle用户的身边登录系统,查看或者编辑~/.bash_profile文件,需要文件内容如下:

TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR

ORACLE_BASE=/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/10/db_1; export ORACLE_HOME
ORACLE_SID=RAC1; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATH

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH

if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi