Oracle9i 9.0.1 for Linux Install 〜Step 7 リンクエラーの対処〜
Oracle9i 9.0.1 for Linux Install
〜Step 7 リンクエラーの対処〜
0.更新履歴
1.はじめに
このドキュメントでは,RedHat 7.1に,Oracle9i 9.0.1をインストールする手順を示す.
2.リンクエラーの解消方法
- 3枚目のCD-ROMをセットした後,しばらくすると,次のようなエラーがでる.
- 文書番号31552によると,ld(リンカ)がおかしいらしい.
3.makeファイルの変更
[root@poweredge opt]# su - oracle9i
[oracle9i@poweredge oracle9i]$ pwd
/opt/oracle9i
[oracle9i@poweredge oracle9i]$
|
[oracle9i@poweredge oracle9i]$ env | grep ORACLE_HOME
[oracle9i@poweredge oracle9i]$ ls
OraHome1 jre oraInventory oui
[oracle9i@poweredge oracle9i]$
|
[oracle9i@poweredge oracle9i]$ ORACLE_HOME=/opt/oracle9i/OraHome1
[oracle9i@poweredge oracle9i]$ export ORACLE_HOME
[oracle9i@poweredge oracle9i]$ env | grep ORACLE_HOME
ORACLE_HOME=/opt/oracle9i/OraHome1
[oracle9i@poweredge oracle9i]$
|
- $ORACLE_HOME/binディレクトリに移動する.
[oracle9i@poweredge oracle9i]$ cd $ORACLE_HOME/bin
[oracle9i@poweredge bin]$ pwd
/opt/oracle9i/OraHome1/bin
[oracle9i@poweredge bin]$
|
[oracle9i@poweredge bin]$ cp genclntsh genclntsh.bak
[oracle9i@poweredge bin]$ ls -la genclntsh*
-rwxr-xr-x 1 oracle9i dba 5251 5月 18 2001 genclntsh
-rwxr-xr-x 1 oracle9i dba 5251 2月 19 12:18 genclntsh.bak
[oracle9i@poweredge bin]$
|
- genclntshファイルの中身を,次のように変更する.
変更前
141
142 #LD="ld -i -G -z text -L${ORACLE_HOME}/lib" # shared library link command
143 LD="ld -shared -L${ORACLE_HOME}/lib" # shared library link command
144 LD_RUNTIME="-R${ORACLE_HOME}/lib"
145 LD_OPT="-Map ${MAPFILE} -h ${CLNT_LIB}" # name inserted into library
146 LD_OUT="-o ${LIB_DIR}/${CLNT_LIB}" # output specification
147 LD_SELF_CONTAINED="-z defs"
148
149
|
- この147行にあるLD_SELF_CONTAINEDのパラメータをとる.
変更後
141
142 #LD="ld -i -G -z text -L${ORACLE_HOME}/lib" # shared library link command
143 LD="ld -shared -L${ORACLE_HOME}/lib" # shared library link command
144 LD_RUNTIME="-R${ORACLE_HOME}/lib"
145 LD_OPT="-Map ${MAPFILE} -h ${CLNT_LIB}" # name inserted into library
146 LD_OUT="-o ${LIB_DIR}/${CLNT_LIB}" # output specification
147 LD_SELF_CONTAINED=""
148
149
|
- 修正後,genclntshファイルを保存する.
- この修正したスクリプトを実行する.
[oracle9i@poweredge bin]$ ./genclntsh
Created /opt/oracle9i/OraHome1/lib/libclntst9.a
[oracle9i@poweredge bin]$
|
- けっこう時間がかかる.
- RedHatLinux 7.2だと,ここでもエラーがでた.