143
votes

I am trying to automake the OrientDb C++ library, but getting some errors.

Makefile.am:10: error: Libtool library used but 'LIBTOOL' is undefined
Makefile.am:10:   The usual way to define 'LIBTOOL' is to add 'LT_INIT'
Makefile.am:10:   to 'configure.ac' and run 'aclocal' and 'autoconf' again.
Makefile.am:10:   If 'LT_INIT' is in 'configure.ac', make sure
Makefile.am:10:   its definition is in aclocal's search path.

https://github.com/tglman/orientdb-c

https://github.com/tglman/orientdb-c/wiki/Install

I have configure.ac and Makefile.am already defined.

I run the following autotools

  • aclocal

  • autoheader

  • automake:

libtool (GNU libtool) 2.4.2

configure.ac

# -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.

AC_PREREQ([2.69])
AC_INIT([orientdb-c],[0.9])
AC_CONFIG_SRCDIR([src/o_query_internal.h])
AC_CONFIG_HEADERS([config.h])
AM_INIT_AUTOMAKE()

# Checks for programs.
AC_PROG_CXX
AC_PROG_AWK
AC_PROG_CC
AC_PROG_CPP
AC_PROG_INSTALL
AC_PROG_LN_S
AC_PROG_MAKE_SET

LT_INIT

# Checks for libraries.

# Checks for header files.
AC_CHECK_HEADERS([malloc.h memory.h netdb.h netinet/in.h stdlib.h string.h sys/ioctl.h sys/socket.h     sys/time.h unistd.h])

# Checks for typedefs, structures, and compiler characteristics.
AC_TYPE_SIZE_T

# Checks for library functions.
AC_FUNC_MALLOC
AC_FUNC_REALLOC
AC_CHECK_FUNCS([gethostbyname memset socket strchr strcspn strdup strerror])

AC_CONFIG_FILES([Makefile])
AC_OUTPUT

Things I already tried:

  • autoreconf

  • aclocal -I /usr/share/libtool

  • aclocal -I .

6
For anyone else stumbling on this error the fix for me was: sudo apt-get install libtool.Casper
Thanks @Casper you saved my lot of time. For centOs folks it is yum install libtool.Achal

6 Answers

187
votes

A good answer for me was to install libtool:

sudo apt-get install libtool
101
votes

Fixed it. I needed to run libtoolize in the directory, then re-run:

  • aclocal

  • autoheader

4
votes

In my case on macOS I solved it with:

brew link libtool
1
votes

For folks who ended up here and are using CYGWIN, install following packages in cygwin and re-run:

  • cygwin32-libtool
  • libtool
  • libtool-debuginfo
1
votes

For mac it's simple:

brew install libtool
0
votes

For people using Tiny Core Linux, you also need to install libtool-dev as it has the *.m4 files needed for libtoolize.