Setting environment variables
Setting environment variables includes setting the LD_PRELOAD variable. The BMC Remedy Action Request (AR) System server might not start due to the
LD_PRELOAD=/usr/lib/libumem.so environment variable entry in the armonitor.conf file. This entry references 32-bit libraries. The installer does not add this entry during installation.
BMC Remedy AR System provides 32-bit and 64-bit programs on all UNIX platforms. The 64-bit programs cannot load 32-bit libraries (and vice versa), so if you use the LD_PRELOAD environment variables to preload the libraries, you must ensure that they are compatible with 32-bit and 64-bit programs.
For example, the AR System server will not start on a 64-bit Solaris computer if the armonitor.conf file contains a line like the following example:
The Solaris operating system is 64-bit, and /usr/lib/libumem.so is a 32-bit library. A simple solution is to remove the directory part of the preload file name:
The dynamic linker can find the correct version of the library for both 32-bit and 64-bit programs.
Solaris and Linux provide alternative forms:
- LD_PRELOAD_32—Affects only 32-bit dynamic linking. If this variable is set, the 32-bit dynamic linker ignores LD_PRELOAD.
- LD_PRELOAD_64—Affects only 64-bit linking. If this variable is set, the 64-bit dynamic linker ignores LD_PRELOAD.
Environment variables are inherited from parent processes. Therefore, if the LD_PRELOAD variables are set in the process that starts BMC Remedy AR System (a system startup script, or a shell, if you start manually), these variables might interfere with precise operation.
As an installation prerequisite, ensure that these variables are either set correctly or not set at all.