错误: 使用了 LIBTOOL 库,但是没有定义“ LIBTOOL”

我尝试 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。

我运行以下自动工具

  • 本地人

  • 自动抬头

  • 汽车制造:

Libtool (GNUlibtool)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.

135929 次浏览

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

  • 本地人

  • 自动抬头

对我来说,一个不错的答案是安装 libtool:

sudo apt-get install libtool

对于那些最终使用 CYGWIN的用户,在 cygwin 中安装以下软件包并重新运行:

  • Cygwin32-libtool
  • Libtool
  • Libtool-debuginfo

在我的 macOS 案例中,我用以下方法解决了这个问题:

brew link libtool

对 Mac 来说很简单:

brew install libtool

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

对于那些可能有过糟糕的酿造体验、不可预测的下载行为、无尽的依赖、下载时间以及它消耗的大量空间的 Mac 用户,我在下面提供了一个替代方案。也许我的思路是错误的,但是注意另一种方法(除了 MacPorts、 port install libtool 或 xcode、 xcode-select —— install 之外)也不会有什么坏处。

https://ftp.gnu.org/gnu/libtool/

下载 tar.gz 文件,然后解压缩它

tar -xzf libtool-2.4.tar.gz

那么

configure
make
sudo make install