libtool 2.4.2-1.2ubuntu1 produces packages that don't work on OSX where upstream 2.4.2 does not

Bug #1219165 reported by Kenton Varda
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
libtool (Ubuntu)
New
Undecided
Unassigned

Bug Description

The following package was built using libtoolize from Ubuntu Raring's libtool package (2.4.2-1.2ubuntu1):

    http://capnproto.org/capnproto-c++-0.3.0-rc1.tar.gz

The package builds three libraries: libkj, libcapnp, and libcapnpc. libcapnpc depends on libcapnp which depends on libkj.

On Mac OSX, the link step for libcapnpc fails, claiming that symbols defined in libkj are undefined.

I installed GNU's libtool 2.4.2 source package and rebuilt the package, creating:

    http://capnproto.org/capnproto-c++-0.3.0-rc2.tar.gz

This version builds correctly on OSX.

Apparently, Ubuntu's version has a patch which changes the way dependencies are handled.

This may be in some part my fault. When I make this change to Makefile.am:

- libcapnpc_la_LIBADD = $(PTHREAD_LIBS) libcapnp.la
+ libcapnpc_la_LIBADD = $(PTHREAD_LIBS) libcapnp.la libkj.la

Then the problem goes away. I'm not sure if I was supposed to specify it that way, or if libtool is expected to link transitive dependencies automatically. However, it seems very suspicious that Ubuntu's version behaves differently from upstream in a way that breaks some uses.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.