Missing library from Policy server and Web Agent installation on Linux
search cancel

Missing library from Policy server and Web Agent installation on Linux

book

Article ID: 14435

calendar_today

Updated On:

Products

CA Single Sign On Secure Proxy Server (SiteMinder) CA Single Sign-On SITEMINDER CA Single Sign On Agents (SiteMinder)

Issue/Introduction


The ldd command can be used to show the shared libraries required by any given program.

It is useful for figuring out when there is a missing dependency and it can be used to list missing functions and objects.

Starting the Apache fails after installation of the Web Agent, with the following output:

Ignoring invalid environment assignment 'export PATH=/{home_policy_server}/bin:$PATH': /etc/sysconfig/httpd 
Starting The Apache HTTP Server... 
httpd: Syntax error on line 56 of /{home_web_server}/conf/httpd.conf: Cannot load /{home_web_agent}/bin/libmod_sm24.so into server: libsmerrlog.so: cannot open shared object file: No such file or directory 
httpd.service: main process exited, code=exited, status=1/FAILURE 
Ignoring invalid environment assignment 'export PATH=/{home_web_agent}/bin:$PATH': /etc/sysconfig/httpd 
kill: cannot find process "" 
httpd.service: control process exited, code=exited status=1 
Failed to start The Apache HTTP Server. 
Unit httpd.service entered failed state. 
httpd.service failed.

How to determine which library is missing?

 

Resolution


Verify SELinux has been disabled.

To check that the shared library requirements have been installed, run the ldd command on the file and path where the Web Agent was installed.

For instance:

# ldd /{home_web_agent}/bin/libmod_sm24.so

Look for the "not found" messages in the output.

x-vdso.so.1 => (0x00007ffedd1fb000)  
libsmerrlog.so => /{home_web_agent}/bin/libsmerrlog.so (0x00007fd333460000) 
libsmeventlogger.so => /{home_web_agent}/bin/libsmeventlogger.so (0x00007fd333358000) 
libsmcommonutil.so => /{home_web_agent}/bin/libsmcommonutil.so (0x00007fd3331cf000)

libsmi18n.so =>  not found

libicudata.so.49 => /{home_web_agent}/bin/libicudata.so.49 (0x00007fd331e1b000) 
libicui18n.so.49 => /{home_web_agent}/bin/libicui18n.so.49 (0x00007fd331af0000) 

libicuio.so.49  => not found

libicuuc.so.49 => /{home_web_agent}/bin/libicuuc.so.49 (0x00007fd33175c000) 
libSmXlate.so => /{home_web_agent}/bin/libSmXlate.so (0x00007fd3315fd000) 
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fd3313d9000) 
libdl.so.2 => /lib64/libdl.so.2 (0x00007fd3311d4000) 
librt.so.1 => /lib64/librt.so.1 (0x00007fd330fcc000) 
libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007fd330cc4000)

Note that on many of the other lines the => symbol followed by a path.

This is the path to the physical binary.

The hex number is the address where the library will be loaded.

Note also two of the lib files are marked with "not found".