Joined: July 2004
||Posted: Sep. 07 2007,22:40
I've noticed that some applications, depending on how they are compiled, will automatically find their needed libraries if those libraries are 1) pointed to by CFLAGS/CPPFLAGS and LDFLAGS when the application is compiled, and 2) those variables point to directories included with the application.
Some applications don't deal with this, though. I really couldn't say why some do and some don't...I just see it work sometimes.
When compiling lighttpd into /opt/lighttpd after installing pcre to the same directory, and setting LDFLAGS=-L/opt/lighttpd/lib, PATH=$PATH:/opt/lighttpd/bin and CFLAGS=-I/opt/lighttpd/include, the app will automatically find pcre at runtime. Otherwise it would require LD_LIBRARY_PATH=/opt/lighttpd/lib before running the program if pcre is enabled.
Other applications seem to require the LD_LIBRARY_PATH to include the directory of the library at runtime regardless of whether or not it was specified when the app was built. I assume this is due to the way the Makefile was created.