Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to get the system library path on Unix (Linux, FreeBSD)

I need a more-or-less portable programmatic way for querying the dynamic library path list. For Linux, I can concatenate the $LD_LIBRARY_PATH and the contents of /etc/ld.so.conf (processing the include directives as needed and possibly filtering by architecture), but that doesn't work e.g. on FreeBSD.

Ultimately, I need a Python function for doing that. It can call gcc or other external commands if needed.

like image 401
pts Avatar asked Feb 09 '10 16:02

pts


1 Answers

For both Linux and FreeBSD you can try working through the output of ldconfig(8). The options for listing the libraries are different though (-p on Linux, -r on FreeBSD.) Hope this helps.

Edit:

Solaris is different - see man crle.
Mac OSX is different yet again - see man dyld.

like image 175
Nikolai Fetissov Avatar answered Oct 13 '22 09:10

Nikolai Fetissov