适用于:
Oracle服务器—企业版—版本号:9.2.0.1之上的版本【发行号:9.2之上】
SPARC上的64位Oracle Solaris 系统
SPARC上的32位Oracle Solaris 系统
Symptom
当在升级Solaris操作系统到9(2.9)之后运行‘relink all’或者安装9.2.0.1的客户端,将接收到的错误信息如下:
/usr/ccs/bin/make -f ins_net_client.mk ntcontab.o ORACLE_HOME=/rambaldi/app/oracle/product/9.2.0
(if [ "assemble" = "compile" ] ; then \
/rambaldi/app/oracle/product/9.2.0/bin/gennttab > ntcontab.c ;\
cc -c ntcontab.c ;\
rm -f /rambaldi/app/oracle/product/9.2.0/lib/ntcontab.o ;\
mv ntcontab.o /rambaldi/app/oracle/product/9.2.0/lib/ ;\
/usr/ccs/bin/ar rv /rambaldi/app/oracle/product/9.2.0/lib/libn9.a
/rambaldi/app/oracle/product/9.2.0/lib/ntcontab.o ; fi)
(if [ "assemble" = "assemble" ] ; then \
/rambaldi/app/oracle/product/9.2.0/bin/gennttab > ntcontab.s ;\
/usr/ccs/bin/as -P -o ntcontab.o ntcontab.s ;\
rm -f /rambaldi/app/oracle/product/9.2.0/lib/ntcontab.o ;\
mv ntcontab.o /rambaldi/app/oracle/product/9.2.0/lib/ ;\
/usr/ccs/bin/ar rv /rambaldi/app/oracle/product/9.2.0/lib/libn9.a
/rambaldi/app/oracle/product/9.2.0/lib/ntcontab.o ; fi)
/usr/ccs/bin/as: internal error: cf_bof(): couldn't execv("//usr/ccs/lib/cpp",...)
make: Fatal error: *** Error code 1
Command failed for target `ntcontab.o'
提示:同样类型的错误发生于nnfot.o
变化:
Solaris操作系统已经从2.x升级到2.9
原因:
Solaris 9中,有一个需要的包(SUNWcpp)没有在安装指导中找到。
解决:
1) 验证目录/usr/ccs/lib下是否包含有cpp(一个需要的链接,链接到/usr/lib/cpp),或者,如果/usr/ccs/lib存在,则改正链接从/usr/ccs/lib/cpp 到 /usr/lib/cpp
$ ln -s /usr/lib/cpp /usr/ccs/lib/cpp
2) 如果/usr/ccs/lib/cpp不存在,那么就需要安装SUNWcpp包。
3) 运行一个relink
$relink all