-
I installed Oracle 9.2.0.1 on Linux Redhat 7.3 .0. Everything went fine untill Oracle run to Configuration Tools, it hangs there a long time so I cancelled it since it's optional but recommended.
So the installation finish and I could find anywhere on Linux to to get to the GUI tools of Oracle.
When I tried to log into SQL in the command line and I got the following errors:
[oracle@qhoulinux oracle]$ sqlplus /nolog
sqlplus: error while loading shared libraries: libclntsh.so: cannot open shared object file: No such file or directory
I am aware of the problem on :
In order to properly relink the oracle software you should edit the $ORACLE_HOME/bin/genclntsh script before the relink process starts. After the files start installing, open $ORACLE_HOME/bin/genclntsh file with your favorite editor (Don't worry, you'll have plenty of time before relink starts , find the line containing
LD_SELF_CONTAINED="-z defs"
(line 147) and change it to
LD_SELF_CONTAINED=""
Now all of the oracle software should relink properly.
Could someone please give me the instructions or at least tell me what happened here.
Thanks
-
can someone please help???
Thanks
-
Hi,
Have you edit the file? If yes, what happen when you try to relogin?
regards,
feroz
-
Hi,
what file do I have to edit ??? Pleaqse give me more detail.
Thanks
-
Hi,
$ORACLE_HOME/bin/genclntsh.
Do you have full explanation online regarding the text that you paste here? At least I could read it. I dont know whether you have to run it after you edit.
regards,
feroz
-
Below is what I have in $ORACLE_HOME/$product/
#
# List the required symbols from a product's shrept.lst file
listf () {
product=$1
entryList=$ORACLE_HOME/$product/admin/shrept.lst
grep -v '#' $entryList | \
grep $product | \
awk '{ printf (" -u %s", $3); }'
}
#
# Main line starts here
#
#
# Explicit path to ensure that we're using the correct commands
PATH=/bin:/usr/bin:/usr/local/bin:$PATH
export PATH
#
# each product _must_ provide a $PRODUCT/admin/shrept.lst
ErrFiles=
for product in rdbms precomp plsql ldap network
do
SHREPT=$ORACLE_HOME/$product/admin/shrept.lst
if [ ! -f $SHREPT ]
then
ErrFiles="$ErrFiles $SHREPT"
fi
done
if [ ! -z "$ErrFiles" ]
then
echo "genclntsh: Could not locate $ErrFiles" 1>&2
echo "genclntsh: exiting ..." 1>&2
exit 1
fi
#
# library definitions
OLIB=${ORACLE_HOME}/lib
# Precomp
LSQL="-lsql9"
# PL/SQL
LPLSQL="-lpls9"
# RDBMS
LMM="-lmm"
LCLIENT="-lclient9"
LCOMMON="-lcommon9"
LGENERIC="-lgeneric9"
# NLSRTL & CORE
LNLSRTL="-lnls9"
LUNLSRTL="-lunls9"
LCORE="-lcore9"
LXDK="-lxml9"
LXSD="-lxsd9"
# OTrace
LTRACE="-ltrace9"
# LDAP
LLDAP="-lldapclnt9"
# ICache
LWTC="-lwtc9"
# Network
LDFLAGS="`cat ${ORACLE_HOME}/lib/ldflags`"
LNENT=
[ -r ${OLIB}/libnent9.a ] && LNENT="-lnent9"
LNETWORK="${LDFLAGS} ${LNENT} -lnsslb9 -lncrypt9 -ln9 -lnl9 -lnro9 ${LDFLAGS
#
# Create lists of symbols to pass to ld
SYMS_OCIC="`listf rdbms` ${LCLIENT}"
SYMS_SQL="`listf precomp` ${LSQL}"
SYMS_PLSQL="`listf plsql` ${LPLSQL}"
SYMS_LDAP="`listf ldap` ${LLDAP}"
SYMS_NETWORK="`listf network` ${LNETWORK}"
#
# Library names and locations
CLNT_NAM=clntsh # (short) library name
CLNT_VER=9.0 # library version number
CLNT_LNK=lib${CLNT_NAM}.so # name of symlink to library
CLNT_LIB=${CLNT_LNK}.${CLNT_VER} # actual library file name
LIB_DIR=${ORACLE_HOME}/lib # lib. destination directory
if [ ! -z "$SRCHOME" ]
then
# pull it over...
if [ -h ${LIB_DIR}/${CLNT_LIB} ]
then
echo "copying ${CLNT_LIB} to local disk"
cp -p ${LIB_DIR}/${CLNT_LIB} ${LIB_DIR}/${CLNT_LIB}.tmp
rm -f ${LIB_DIR}/${CLNT_LIB}
mv ${LIB_DIR}/${CLNT_LIB}.tmp ${LIB_DIR}/${CLNT_LIB}
chmod +w ${LIB_DIR}/${CLNT_LIB}
fi
#
# Define the name of the map file
MAPFILE=${LIB_DIR}/${CLNT_NAM}.map
#
# Linker command and options
#LD="ld -i -G -z text -L${ORACLE_HOME}/lib" # shared library link comman
LD_RUNTIME="-Wl,-R${ORACLE_HOME}/lib"
LD_OUT="-o ${LIB_DIR}/${CLNT_LIB}" # output specification
LD_SELF_CONTAINED=""
#
# Oracle library dependencies
DEF_ON="${ORACLE_HOME}/rdbms/lib/kpudfo.o"
NAUTAB="${ORACLE_HOME}/lib/nautab.o"
NAETAB="${ORACLE_HOME}/lib/naeet.o ${ORACLE_HOME}/lib/naect.o"
NAEDHS="${ORACLE_HOME}/lib/naedhs.o"
XAONDY="${ORACLE_HOME}/rdbms/lib/xaondy.o"
OLIBS="${LCLIENT}"
OLIBS="${OLIBS} ${LSQL}"
OLIBS="${OLIBS} ${LNETWORK}"
OLIBS="${OLIBS} ${LCLIENT}"
OLIBS="${OLIBS} ${LCOMMON}"
OLIBS="${OLIBS} ${LGENERIC}"
OLIBS="${OLIBS} ${LMM}"
OLIBS="${OLIBS} ${XAONDY}"
OLIBS="${OLIBS} ${LWTC}"
OLIBS="${OLIBS} ${LNETWORK}"
OLIBS="${OLIBS} ${LCLIENT}"
OLIBS="${OLIBS} ${LCOMMON}"
OLIBS="${OLIBS} ${LGENERIC}"
OLIBS="${OLIBS} ${LTRACE}"
OLIBS="${OLIBS} ${LNLSRTL}"
OLIBS="${OLIBS} ${LCORE}"
OLIBS="${OLIBS} ${LNLSRTL}"
OLIBS="${OLIBS} ${LUNLSRTL}"
OLIBS="${OLIBS} ${LXDK}"
OLIBS="${OLIBS} ${LXSD}"
OLIBS="${OLIBS} ${LNLSRTL}"
OLIBS="${OLIBS} ${LUNLSRTL}"
OLIBS="${OLIBS} ${LCORE}"
#SYSLIBS=`cat ${ORACLE_HOME}/lib/sysliblist`" -laio -lm -lc"
#SYSLIBS=`cat ${ORACLE_HOME}/lib/sysliblist`" -ldl -lm -lc"
# LD does not seem to recognize -Wl,-relax, which CC needs
#SYSLIBS="-Wl,-relax -ldl -lnsl -lpthread -lrt -lm -lc"
# Removed -lrt option
SYSLIBS="-Wl,-relax -ldl -lnsl -lpthread -lm -lc"
# Introducing stubs for compatibility with higher version of glibc
STUBS=-L${ORACLE_HOME}/lib/stubs
# Create library
/bin/rm -f ${LIB_DIR}/${CLNT_LIB} ${MAPFILE}
${LD} ${LD_RUNTIME} ${STUBS} ${LD_OPT} ${LD_OUT} ${LD_SELF_CONTAINED} \
${DEF_ON} ${NAUTAB} ${NAETAB} ${NAEDHS} ${SYMS_SQL} \
${SYMS_PLSQL} ${SYMS_OCIC} ${SYMS_LDAP} ${SYMS_NETWORK} ${OLIBS} \
${SYSLIBS} ${USRLIBS} > ${MAPFILE}
# Create ".so" link to library in a non-development environment only
# and generate the client static library
if [ -z "${SRCHOME}" ]
then
if [ -s ${LIB_DIR}/${CLNT_LIB} ]
then
cd ${LIB_DIR}
rm -f ${CLNT_LNK}
ln -s ${CLNT_LIB} ${CLNT_LNK}
fi
${ORACLE_HOME}/bin/genclntst
else
if [ -s ${LIB_DIR}/${CLNT_LIB} ]
then
cd ${SRCHOME}/lib
rm -f ${CLNT_LNK}
if [ -d ../rdbms ]; then
ln -s ../rdbms/lib/${CLNT_LIB} ${CLNT_LNK}
else
ln -s ../../rdbms/lib/${CLNT_LIB} ${CLNT_LNK}
fi
fi
fi
exit 0
-
you must have done something wrong, I installed twice yesterday 9.2.0.1 succesfully in RedHat 7.3 without editing genclntsh at all
I had to edit $ORACLE_HOME/ctx/lib/env_ctx.mk that's all
search in a file $ORACLE_HOME/ctx/lib/env_ctx.mk for the INSO_LINK and added the $(LINKLDLIBS) to the end of the lib includes. From
"INSO_LINK = -Wl,-rpath,$(CTXLIB) $(LDLIBFLAG)m $(LDLIBFLAG)sc_fa $(LDLIBFLAG)sc_fi $(LDLIBFLAG)sc_ch $(LDLIBFLAG)sc_ut $(LDLIBFLAG)sc_ex $(LDLIBFLAG)sc_da $(LLIBCTXHX) $(LDLIBFLAG)m $(LDLIBFLAG)c $(CORELIBS)"
TO THIS --->
"INSO_LINK = -Wl,-rpath,$(CTXLIB) $(LDLIBFLAG)m $(LDLIBFLAG)sc_fa $(LDLIBFLAG)sc_fi $(LDLIBFLAG)sc_ch $(LDLIBFLAG)sc_ut $(LDLIBFLAG)sc_ex $(LDLIBFLAG)sc_da $(LLIBCTXHX) $(LDLIBFLAG)m $(LDLIBFLAG)c $(CORELIBS $(LINKLDLIBS)"
I dunno where did you get that text but it not correct, not for 9.2.0.1 anyways
That editing genclntsh in RedHat was meant for 9.0.1 and RedHat 7.1, 7.2
-
I just followed this docs :
http://staff.in2.hr/denis/oracle/901...l_rh73_en.html
Please let me know if you find anything and you recommend to fix my problems
thanks
-
ashley75,
that doc is for oracle 9.0.1. You are using other version. Can you follow pando method as he got it right at the end.
regards,
feroz
-
Hi Pando:
I am planning to install Oracle 9i ver. 2 on Linux 7.3 as well, possibly this weekend. However, I am not very confident about the whole endeavor since I am relatively new to IT, and know even less about Linux. I just want to learn Oracle on Unix/Linux since my company is an NT shop. Would you be kind enough and point me to the right place where I can get the installation doc/guide, as well as what loophole to avoid.
Thanks in advance for the help/advice.
Cheers
John
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|