Query: dlsetlibpath
OS: hpux
Section: 3c
Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar
dlsetlibpath(3C) dlsetlibpath(3C)NAMEdlsetlibpath() - set the dynamic search path used to locate shared librariesSYNOPSIS[flag]... file... [library]... Multithread Usage This routine is thread-safe. Calls to affect all subsequent calls to and on any thread.DESCRIPTIONis one of a family of routines that give the user direct access to the dynamic linking facilities (using the option on the compiler or com- mand line). sets the dynamic search path used by and to locate shared libraries. libpath is the dynamic search path. It is a list of one or more path names separated by colons When searching for a library, the dynamic loader uses search paths in the following default order: 1. The dynamic search path specified in a call to 2. The environment variable. 3. The environment variable. 4. The embedded path of the calling module (executable program or shared library) for libraries named in calls to or For dependent libraries, the embedded path of the library that named it as a dependent is used. 5. The standard library path. 6. The current working directory. (This is only for libraries named in calls to and not their dependent libraries.) (See dld.so(5) for additional information on search paths and options that can change the order described above.) Any combination of these paths may be disabled by setting flags to one or more of the following flag values OR'ed together. If the follow- ing value is set, the dynamic loader does not search the specified location: Directories specified in the dynamic search path. Directories specified in the environment variable. Directories specified in the environment variable. Directories specified in the embedded path. Standard library directory. Current working directory. Multiple search paths can be disabled by OR'ing individual flags: flags = RTLD_FLAG_DISABLE_STD_PATH | RTLD_FLAG_DISABLE_CWD_PATH A single search path can be enabled by setting flags to the complement of the flag value that disables that search path: flags = ~RTLD_FLAG_DISABLE_DYNAMIC_PATHEXAMPLESThe following example illustrates the use of to set the dynamic search path and disable other search paths. For simplicity, error checking has been omitted. #include <dlfcn.h> int main() { void *handle; int status; int flags; /* Set dynamic search path and disable the embedded * path and the standard library directory. */ flags = RTLD_FLAG_DISABLE_EMBEDDED_PATH | RTLD_FLAG_DISABLE_STD_PATH; status = dlsetlibpath("/opt/lib:/opt/usr/lib", flags); /* Call dlopen to load a library using the dynamic * search path. */ handle = dlopen("mylib.so", RTLD_LAZY); /* Remove the dynamic search path and reenable all * disabled search paths. */ status = dlsetlibpath(NULL, 0); }RETURN VALUEIf successful, returns otherwise a non-0 value is returned. More detailed diagnostic information is available through orERRORSIf fails, a subsequent call to returns one of the following values: Cannot allocate dynamic memory. Failed to apply relocation while resolving call to call failed on entry to call failed on exit from failed on entry to or exit from Invalid argument in call toSEE ALSOdlopen(3C), dlopene(3C), dlgetfileinfo(3C), dlerrno(3C), dlerror(3C), dld.so(5). Texts and Tutorials: (See the option) (See manuals(5) for ordering information) dlsetlibpath(3C)
Related Man Pages |
---|
dlsym(3) - redhat |
ldd_ia(1) - hpux |
ldd_pa(1) - hpux |
dlget(3c) - hpux |
dlgetmodinfo(3c) - hpux |
Similar Topics in the Unix Linux Community |
---|
Tar only the Directories and Sub Directories |
Bash in C ? |
How to write a code in C to search a file |
library path in linux |
local dynamic http development environment |