On Tue, 23 Mar 2021, Dan Mahoney (Gushi) wrote:
Given the standard nature of autoconf/automake/libtool, Before we install, we
have a wrapper script sitting in $srcdir/opendmarc/opendmarc, that wraps
libtool around a compiled library in $srcdir/.libs
Here's the problem with that -- the way the program is linked, it links
against the *system* version of libopendmarc (in /usr/local/lib), not the one
we're about to install (which is in ../../libopendmarc/.libs)
The normal case when using Automake and libtool is that libtool is
also used to compile/link the program, and to link with the libraries
it needs (both in the build tree, and already installed). A wrapper
script/program is put in the place of where the real program would
normally go which assures that the correct libraries are used.
Is there a way to make libtool and the like smarter about this. I.e. "check
if this library exists, but also know that *we will be building this
library*, and for testing purposes, point at our version".
If the documented procedures are used, then programs in the build tree
will be pointing at libraries in the build tree.
Is there an easy macro-ish way around this, or am I stuck creating some sort
of fake chroot to test this.
It seems that the project is not entirely using the Autotool's way of
doing things. I suggest reading the Automake documentation first.
Bob
--
Bob Friesenhahn
bfriesen@xxxxxxxxxxxxxxxxxxx, http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer, http://www.GraphicsMagick.org/
Public Key, http://www.simplesystems.org/users/bfriesen/public-key.txt