Opened 13 years ago

Closed 13 years ago

#27921 closed defect (worksforme)

aclocal.m4 version conflict with libtool

Reported by: whittaker007@… Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version: 1.9.2
Keywords: aclocal.m4 libtool LT_INIT version conflict Cc:
Port: gd2 graphviz

Description (last modified by ryandesign (Ryan Carsten Schmidt))

Several ports cannot be installed due to LT_INIT being built with an older version of libtool (2.2.6b) than the one currently installed (2.4). This causes failure to install at least the following two ports, and most likely several others:

  • gd2
  • graphviz

In both of these cases the reported error was practically the same:

:info:build libtool: Version mismatch error.  This is libtool 2.4, but the
:info:build libtool: definition of this LT_INIT comes from libtool 2.2.6b.
:info:build libtool: You should recreate aclocal.m4 with macros from libtool 2.4
:info:build libtool: and run autoconf again.

Based on other suggestions while looking for possible solutions, I have tried:

$ sudo port sync

$ port outdated
No installed ports are outdated.

$ sudo port clean --work gd2
--->  Cleaning gd2

$ port installed autoconf automake gettext libiconv libtool
The following ports are currently installed:
  autoconf @2.65_0
  autoconf @2.68_1 (active)
  automake @1.11.1_0 (active)
  gettext @0.17_4
  gettext @0.18.1.1_2 (active)
  libiconv @1.13_0
  libiconv @1.13.1_0 (active)
  libtool @2.2.6b_0
  libtool @2.4_0 (active)

But the install always fails:

$ sudo port install gd2
--->  Computing dependencies for gd2
--->  Fetching gd2
--->  Verifying checksum(s) for gd2
--->  Extracting gd2
--->  Applying patches to gd2
--->  Configuring gd2
--->  Building gd2
Error: Target org.macports.build returned: shell command failed (see log for details)
Log for gd2 is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_gd2/main.log
Error: Status 1 encountered during processing.
To report a bug, see <http://guide.macports.org/#project.tickets>

Change History (8)

comment:1 Changed 13 years ago by whittaker007@…

Also, I attempted to change the installed version of libtool:

$ port installed libtool
The following ports are currently installed:
  libtool @2.2.6b_0
  libtool @2.4_0 (active)

$ sudo port deactivate libtool
--->  Deactivating libtool

$ sudo port activate libtool @2.2.6b_0
--->  Activating libtool @2.2.6b_0

$ port installed libtool
The following ports are currently installed:
  libtool @2.2.6b_0 (active)
  libtool @2.4_0

But when I tried to install gd2 again I get the same error stating that libtool is currently 2.4!

$ sudo port install gd2
--->  Computing dependencies for gd2
--->  Building gd2
Error: Target org.macports.build returned: shell command failed (see log for details)
Log for gd2 is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_gd2/main.log

cat /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_gd2/main.log
...snipped...

info:build libtool: Version mismatch error.  This is libtool 2.4, but the
:info:build libtool: definition of this LT_INIT comes from libtool 2.2.6b.
:info:build libtool: You should recreate aclocal.m4 with macros from libtool 2.4
:info:build libtool: and run autoconf again.

comment:2 Changed 13 years ago by jmroot (Joshua Root)

Owner: changed from macports-tickets@… to ryandesign@…
Port: gd2 graphviz added

Both of these build fine for me.

comment:3 Changed 13 years ago by whittaker007@…

Weird. I tried reinstalling MacPorts from the package MacPorts-1.8.2-10.6-SnowLeopard.dmg, but get the same results. I have been able to install other packages. I'm running Mac OS X 10.6.6

comment:4 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)

Description: modified (diff)

comment:5 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)

If you want to properly test what happens when you go back to an older version of libtool, you need to clean the port you're testing before trying again, e.g. "sudo port clean gd2" before trying to build gd2 again. Otherwise it's just reusing the work directory (and the configure results) from the last attempt, when the other version of libtool was active.

I suspect you had libtool 2.2 active when building $someport and that knowledge of libtool 2.2 has been encoded into that port, and now it's causing problems when trying to build other ports now that you have libtool 2.4 active. You probably just need to rebuild $someport while libtool 2.4 is active. But I don't know what port $someport is. You could attach the complete main.log file from a failed build attempt of either gd2 or graphviz, and I can compare it with a successful run on my system; maybe that will show us the problem.

When you wrote MacPorts-1.8.2 above, I hope you meant MacPorts-1.9.2.

comment:6 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)

whittaker007, were you able to resolve the above issues?

comment:7 in reply to:  6 Changed 13 years ago by whittaker007@…

Replying to ryandesign@…:

whittaker007, were you able to resolve the above issues?

Yes, I believe I fixed them by completely trashing MacPorts and installing it again from the latest image. It must have been some old lib in there or something, at that point I had been using MacPorts for over a year and updating it only occasionally using the package manager. Starting from scratch was a bit of a pain since I had a number of additional libraries installed, but I believe I found a command somewhere to list all the installed ports and I just went through that list and re-installed the ones that were missing after the reinstall.

comment:8 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: worksforme
Status: newclosed

Glad you got it working.

Note: See TracTickets for help on using tickets.