==How can executables be changed to Enable or Disable use of SHLIB_PATH environment variable==
HP-UX has a chatr command that allows the attributes on an executable to be viewed and changed. With this command you can specifically check if an executable has been built to use the SHLIB_PATH environment variable to locate shared libraries it may need, using commands of the form:
{{{
chatr ;;; list internal attributes
chatr +s enable ;;; enable SHLIB_PATH usage attribute
chatr +s disable ;;; disable SHLIB_PATH usage attribute
}}}
Example for the UDA Informix 9 database agent (inf9_mv) are as below:
{{{
$ chatr inf9_mv
inf9_mv:
shared executable
shared library dynamic path search:
SHLIB_PATH enabled first
embedded path disabled second Not Defined
shared library list:
dynamic /dbs/informix/32bit/ids2k/lib/esql/libthxa.sl
dynamic /usr/lib/libnsl_s.2
dynamic /usr/lib/libm.2
dynamic /usr/lib/libsec.2
dynamic /usr/lib/libpthread.1
dynamic /usr/lib/libnsl.1
dynamic /usr/lib/libc.2
shared library binding:
deferred
.
.
.
}}}
{{{
$ chatr +s disable inf9_mv
inf9_mv:
current values:
shared executable
shared library dynamic path search:
SHLIB_PATH enabled second
embedded path disabled first Not Defined
shared library list:
dynamic /dbs/informix/32bit/ids2k/lib/esql/libthxa.sl
dynamic /usr/lib/libnsl_s.2
dynamic /usr/lib/libm.2
dynamic /usr/lib/libsec.2
dynamic /usr/lib/libpthread.1
dynamic /usr/lib/libnsl.1
dynamic /usr/lib/libc.2
shared library binding:
deferred
.
.
.
new values:
shared executable
shared library dynamic path search:
SHLIB_PATH disabled second
embedded path disabled first Not Defined
shared library list:
dynamic /dbs/informix/32bit/ids2k/lib/esql/libthxa.sl
dynamic /usr/lib/libnsl_s.2
dynamic /usr/lib/libm.2
dynamic /usr/lib/libsec.2
dynamic /usr/lib/libpthread.1
dynamic /usr/lib/libnsl.1
dynamic /usr/lib/libc.2
shared library binding:
deferred
.
.
.
}}}
{{{
$ chatr +s enable inf9_mv
inf9_mv:
current values:
shared executable
shared library dynamic path search:
SHLIB_PATH disabled second
embedded path disabled first Not Defined
shared library list:
dynamic /dbs/informix/32bit/ids2k/lib/esql/libthxa.sl
dynamic /usr/lib/libnsl_s.2
dynamic /usr/lib/libm.2
dynamic /usr/lib/libsec.2
dynamic /usr/lib/libpthread.1
dynamic /usr/lib/libnsl.1
dynamic /usr/lib/libc.2
shared library binding:
deferred
.
.
.
new values:
shared executable
shared library dynamic path search:
SHLIB_PATH enabled second
embedded path disabled first Not Defined
shared library list:
dynamic /dbs/informix/32bit/ids2k/lib/esql/libthxa.sl
dynamic /usr/lib/libnsl_s.2
dynamic /usr/lib/libm.2
dynamic /usr/lib/libsec.2
dynamic /usr/lib/libpthread.1
dynamic /usr/lib/libnsl.1
dynamic /usr/lib/libc.2
shared library binding:
deferred
.
.
.
}}}
See the man page man chatr for more details.