Kbase 19804: Can't shl_load() libjava.sl - Oracle 8.1.X - HPUX 11
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  10/15/2008 |
|
Status: Verified
FACT(s) (Environment):
ORACLE 8.1.6
ORACLE 8.1.7
Progress 9.1x
HP-UX 11 32-bit
SYMPTOM(s):
unable to connect to ORACLE 8.1.6 or 8.1.7
ORACLE error see "ORACLE Error Messages and Codes Manual". (1252)
The following errors are present when attempting to connect client to Oracle.
/usr/lib/dld.sl: Can't shl_load() a library containing Thread
Local Storage:
/oracle/8.1.6/JRE/lib/PA_RISC
ative_threads/libjava.sl
/usr/lib/dld.sl: Exec format error
ORA-01012: not logged on
Following error in dataserv.lg file
SERVER: Unable to load shared library in dataserver.lg
CAUSE:
The shared library that contains what Hewlett-Packard calls "thread-local storage" cannot be loaded into a running process' address space by the shl_load() call. Such a shared library can be loaded only when the program is initially started.
FIX:
Progress executable must be linked to $ORACLE_HOME/JRE/lib/PA_RISC
ative_threads/libjava.sl so that it can be loaded at startup.
Building a Progress client and/or _orasrv with PROBUILD (configurable elements: ORACLE DATASERVER and TCP/IP) and then editing the link script, adding the following line as the next-to-last line in the $CC command line:
$ORACLE_HOME/JRE/lib/PA_RISC
ative_threads/libjava.sl \
The last three lines of the link read:
-lcl \
$ORACLE_HOME/JRE/lib/PA_RISC
ative_threads/libjava.sl \
$PROLOAD/4gl/libavcall.a \
Make sure you have ORACLE_HOME set to the ORACLE install directory before you run the link script to create the executable.