错误:使用了Libtool库,但未定义“LIBTOOL”

时间:2013-09-24 09:52:09

标签: c linux autotools orientdb

我正在尝试automake OrientDb C ++库,但却遇到了一些错误。

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

我已经定义了configure.ac和Makefile.am。

我运行以下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

我已经尝试过的事情:

  • autoreconf

  • aclocal -I / usr / share / libtool

  • aclocal -I。

6 个答案:

答案 0 :(得分:110)

感谢@Casper和@Aust给我一个很好的答案就是安装libtool:

sudo apt-get install libtool

答案 1 :(得分:78)

修正了它。我需要在目录中运行libtoolize,然后重新运行:

  • aclocal会

  • autoheader就

答案 2 :(得分:2)

对于最终在这里使用CYGWIN的人,请在cygwin中安装以下软件包并重新运行:

  • cygwin32-libtool
  • libtool
  • libtool-debuginfo

答案 3 :(得分:2)

在MacO上,我使用以下方法解决了该问题:

brew link libtool

我知道这是一个古老的问题,但是遇到了这个问题,也许会对其他人有所帮助。

答案 4 :(得分:0)

对于Mac,这很简单:

brew install libtool

答案 5 :(得分:0)

对于使用Tiny Core Linux的用户,您还需要安装libtool-dev,因为它具有libtoolize所需的* .m4文件。