On Wed, Feb 27, 2008 at 11:16:26AM -0800, Danek Duvall wrote: > On Wed, Feb 27, 2008 at 12:58:15PM -0600, Nicolas Williams wrote: > > I don't follow. > > I could be completely misunderstanding what Laca meant, but what I took > from his statement was that:
You did misunderstand :) > - if there's no .la file for libtool to read, then it will stick various > crud paths in the RUNPATH of the executables it creates, including the > directories where its dependencies lie in the source It's the reverse. The libtool link command line that creates libtclsqlite3.so is referencing the libsqlite3.la in the current directory, which causes the current directory (+ /.libs) to be added to the RUNPATH by libtool, because it's trying to be helpful. > - if there *is* a .la file given to libtool, it will extract from it the > correct runpaths to insert into the executables it creates, and if one > of those paths is /usr/lib, it will be skipped. That'd be great, but it'd also be wrong. Why should a dependency's runpath have anything to do with the consumer's runpath? The consumer's runpath needs to be able to find the dependency, and the dependency's runpath needs to be able to file its dependencies, and...
