Related info from testlog file (<home dir> is used instead of the full path):
----------------------------------------------------------------------
Options:          --openssldir=<home dir>/openssl enable-threads -D_REENTRANT 
enable-shared no-gmp no-krb5 no-mdc2 no-rc5 no-zlib no-zlib-dynamic
OS (uname):       AIX chi-ibm02 2 5 00CBD8CF4C00
OS (config):      00CBD8CF4C00-ibm-aix
Target (default): aix-cc
Target:           aix-cc
Compiler:         /usr/bin/pg /usr/vac/exe/default_msg/vac.help 
  C for AIX Compiler, Version 6

  Usage:
     xlc [ option | inputfile ]...
     cc [ option | inputfile ]...
     c89 [ option | inputfile ]...
     xlc128 [ option | inputfile ]...
     cc128 [ option | inputfile ]...
     xlc_r [ option | inputfile ]...
     cc_r [ option | inputfile ]...
     xlc_r4 [ option | inputfile ]...
     cc_r4 [ option | inputfile ]...
     xlc_r7 [ option | inputfile ]...
     cc_r7 [ option | inputfile ]...
-------------------------------------------------------------------------------------------------

Output from "openssl version -a":
-------------------------------------------------------------------------------------------------
OpenSSL 0.9.8a 11 Oct 2005
built on: Fri Nov  4 11:05:47 CST 2005
platform: aix-cc
options:  bn(64,32) md2(int) rc4(ptr,char) des(idx,cisc,4,long) idea(int) 
blowfish(idx) 
compiler: cc -DOPENSSL_THREADS -qthreaded -DDSO_DLFCN -DHAVE_DLFCN_H 
-D_REENTRANT -q32 -O -DB_ENDIAN -qmaxmem=16384
OPENSSLDIR: "<home dir>/openssl"
------------------------------------------------------------------------------------------------

Problem description: When I install OpenSSL-0.9.8/0.9.8a on AIX with shared 
libraries,
after command "make" it builds but produces a number of error messages like:
-------------------------------------------------------------------------------------------------
exec(): 0509-036 Cannot load program <home 
dir>/openssl-0.9.8a/util/../apps/openssl because of the following errors:
        0509-150   Dependent module libc.a(shr.o) could not be loaded.
        0509-022 Cannot load module libc.a(shr.o).
        0509-026 System error: A file or directory in the path name does not 
exist.
-------------------------------------------------------------------------------------------------
The next command "make test" actually fails with similar error messages.
If I ignore this and call "make install", it installs properly but when I try 
to run
openssl executable, it again fails to load with the same error message. In fact,
when I link another application with shared libraries libcrypto.so.0.9.8 & 
libssl.so.0.9.8,
they load successfully. The problem doesn't exist in previous major release,
at least OpenSSL-0.9.7b, and even in OpenSSL-0.9.8/0.9.8a if it is built 
without shared libraries.
It can be helped by explicitly adding the path for libc.a, e.g.
       env LIBPATH=/usr/lib <required command>
but it doesn't seem to be a good permanent solution.
When I examined the explicit paths contained in the binaries, using "dump -H 
...",
for openssl executable, it gives:
-------------------------------------------------------------------------------------------------
                        ***Import File Strings***
INDEX  PATH                          BASE                MEMBER              
0      <home dir>/openssl/lib                                         
1                                    libc.a              shr.o               
-------------------------------------------------------------------------------------------------
i.e. openssl contains only the path for just installed version and not any 
system path.
Shared libraries contain the correct system path, e.g. for libssl.so:
-------------------------------------------------------------------------------------------------
                        ***Import File Strings***
INDEX  PATH                          BASE                MEMBER              
0      .:/usr/lpp/xlopt:/usr/lib:/lib                                         
1                                    libcrypto.so                            
2                                    libc.a              shr.o               
--------------------------------------------------------------------------------------------------
As already mentioned, the path seems to be correct in OpenSSL-0.9.7b or in
OpenSSL-0.9.8/0.9.8a built without shared libraries. In the build log, produced 
by
"make" under the conditions of this bug, we can see the repeated line:
------------------------------------------------------------------------------------------------
LDFLAGS="-DOPENSSL_THREADS -qthreaded -DDSO_DLFCN -DHAVE_DLFCN_H -D_REENTRANT 
-q32 -O -DB_ENDIAN -qmaxmem=16384 -blibpath:<home dir>/openssl/lib"; \
------------------------------------------------------------------------------------------------
Because of the results, it is clear that "-blibpath:...", suppressing system 
paths, somehow
applied only to openssl executable but not shared libraries. Therefore, it 
looks necessary
to fix the configuration file(s)/script(s) so that this flag would not appear 
with the home path
and wouldn't suppress system paths for openssl executable as well.
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [email protected]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to