当我为我的C程序编译运行automake --foreign --add-missing时,出现以下消息。

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

这是我的configure.ac代码,包括LT_INIT。
AC_PREREQ([2.69])
AC_INIT([drive], [1], [admin@local])
AM_INIT_AUTOMAKE
AC_CONFIG_SRCDIR([src/drive.c])
AC_CONFIG_HEADERS([config.h])
# Checks for programs.
AC_PROG_CC
LT_INIT
AC_CONFIG_FILES([Makefile
                src/Makefile
                mylib/Makefile])
AC_OUTPUT

还有mylib/Makefile.am在这里
lib_LTLIBRARIES = libmylib.la
libmylib_la_SOURCES = mylib.c
include_HEADERS = mylib.h

那么aclocal的存储路径在哪里,我该如何写LT_ININT的定义?

最佳答案

我可以看到带有aclocal --print-ac-dir的aclocal的搜索路径

这是/opt/libtool/share/aclocal
但是没有自述文件就没有任何资源。

在我的情况下,aclocal与automake的安装不同
/opt/automake/share/aclocal中有一些与m4相关的文件

然后我做了符号链接(symbolic link)到/opt/automake/share/aclocal

/opt/libtool/share/aclocal-> /opt/automake/share/aclocal

现在,自动制作完成,没有错误。

关于c - aclocal的搜索路径在哪里,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22526375/

10-12 16:15