libclntsh.a(shr.o) could not be loaded
SN-007797
Errors accessing the 32-bit version of Oracle from the 64-bit version of SAS on AIX 4.3.3
Attempting to connect to Oracle 8.1.7.0.0 using the 32-bit Oracle client
from the 64-bit version of SAS may produce the following errors:
Could not load !SASROOT/sasexe/sasora (6 images loaded)
Error: 0509-022 Cannot load module !SASROOT/sasexe/sasora.
0509-150 Dependent module
$ORACLE_HOME/lib/libclntsh.a(shr.o) could not be loaded.
0509-103 The module has an invalid magic number.
0509-022
Cannot load module $ORACLE_HOME/lib/libclntsh.a.
0509-150
Dependent module $ORACLE_HOME/lib/libclntsh.a could not be
loaded.
ERROR: The SAS/ACCESS Interface to ORACLE cannot be loaded. The SASORA
code appendage could not be loaded.
where !SASROOT is the path to the directory where SAS is installed and
$ORACLE_HOME is the path to your ORACLE installation.
To circumvent the problem, use the 64-bit version of the Oracle client
with the 64-bit version of SAS. To confirm these versions are being
used, issue the following commands from a Unix prompt:
$ cd $ORACLE_HOME/lib
$ ar -X64 -t libclntsh.a
$ ar -X32 -t libclntsh.a
The text "shr.o" will be returned by the command that matches the
current version. That is, if a 64-bit file is extracted by the command
"ar -X64 -t libclntsh.a", the text "shr.o" will appear after the
command. Likewise, if a 32-bit file is extracted by the command
"ar -X32 -t libclntsh.a", the text "shr.o" will appear after this
command.
역으로의 변환은
$ cd $ORACLE_HOME/lib
$ ar -X32 -t libclntsh.a
$ ar -X64 -t libclntsh.a