Re: [PATCH 2/2] Add uuid to the linker flags if using built LIBBLKID

Karel Zak
2012-02-28T14:35:43Z

On Fri, Feb 24, 2012 at 06:16:08PM +0100, Sebastian Andrzej Siewior wrote:
> |ld: warning: libuuid.so.1, needed by ../libblkid/src/.libs/libblkid.so, not found (try using -rpath or -rpath-link)
> |../libblkid/src/.libs/libblkid.so: undefined reference to `uuid_unparse@UUID_1.0'
>
> Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
> ---
> config/include-Makefile.am | 3 +++
> 1 files changed, 3 insertions(+), 0 deletions(-)
>
> diff --git a/config/include-Makefile.am b/config/include-Makefile.am
> index 29760d4..895d4bc 100644
> --- a/config/include-Makefile.am
> +++ b/config/include-Makefile.am
> @@ -31,6 +31,9 @@ ul_libuuid_la = $(top_builddir)/libuuid/src/libuuid.la
> $(ul_libuuid_la):
> $(MAKE) -C $(ul_libuuid_builddir)
>
> +if BUILD_LIBBLKID

I guess you mean "if BUILD_LIBUUID".

> + ul_libblkid_la += $(ul_libuuid_la)
> +endif

Hmm... I don't like this, it creates explicit dependence, libtool
should be smart enough to maintain dependencies dynamically.

We have libuuid.la in libblkid_la_LIBADD (see in libblkid/src/Makefile.am) and
on my system it generates the final libblkid.la with

# Libraries that this one depends upon.
dependency_libs='/home/projects/util-linux/util-linux/libuuid/src/libuuid.la'

It would be nice to know more details about your environment to
reproduce this problem. If I will be able to reproduce the problem
then I can also add regression test (for cross compiling).

Karel

--
Karel Zak <kzak@redhat.com>