Makefile 宏'AM_PATH_CPPUNIT';在图书馆中找不到

Makefile 宏'AM_PATH_CPPUNIT';在图书馆中找不到,makefile,configure,cppunit,Makefile,Configure,Cppunit,我正在尝试在共享主机上构建libtorrent。如此构建的CPPFUnit(1.12.1)带有--前缀=$HOME。之后,我的$HOME/lib和$HOME/include包含CPPFUnit库和标题 我导出的LD路径 export LD_LIBRARY_PATH=$HOME/lib:$LD_LIBRARY_PATH export LD_INCLUDE_PATH=$HOME/include:$LD_INCLUDE_PATH 然后我运行libtorrent/autogen.sh--prefix=

我正在尝试在共享主机上构建
libtorrent
。如此构建的CPPFUnit(1.12.1)带有
--前缀=$HOME
。之后,我的
$HOME/lib
$HOME/include
包含CPPFUnit库和标题

我导出的
LD
路径

export LD_LIBRARY_PATH=$HOME/lib:$LD_LIBRARY_PATH
export LD_INCLUDE_PATH=$HOME/include:$LD_INCLUDE_PATH
然后我运行libtorrent/autogen.sh--prefix=$HOME并得到以下警告,这会阻止我运行configure:

aclocal...
aclocal:configure.ac:20: warning: macro `AM_PATH_CPPUNIT' not found in library

cppunit.m4文件位于$HOME/share/aclocal中。我猜由于某种原因,
libtorrent
找不到该目录。

您将CPPUnit安装在默认情况下未搜索的非系统位置,奇怪的是,在libtorrent构建中运行aclocal时,它不知道如何查找该目录。你可以,我相信你可以找到一种方法,用AutoGo.SH在中间。

< p>你需要做一个<代码> APT get安装LICBCPUngED/<代码>

< P>我尝试我在互联网上找到的每一个方法。但是,只有在知道根本原因之后,才能最终修复它

1.在CPPUNIT.m4中声明AM_路径_CPPUNIT。发生错误的原因是找不到cppunit.m4

2.命令“aclocal--version”查找版本。i、 e.A局部-1.15

3.命令“find/| grep aclocal-1.15”查找库位置。i、 e./usr/local/share/aclocal-1.15

4.命令“find/| grep cppunit.m4”以确保您有一个cppunit.m4。如果没有,则命令“yum list*cppunit*”并安装列出的软件包。重复当前步骤

5.将该cppunit.m4复制到提到的aclocal lib路径


6.再次运行,错误消失。

在Windows中使用MSYS2构建libtorrent时,我遇到了相同的问题。 安装的
cppunit
软件包和
autogen.sh
步骤已完成,无错误

pacman-S mingw-w64-x86_64-cppunit

或对于32位:
pacman-S mingw-w64-i686-cppunit

另外,对于构建
libtorrent
Windows MSYS运行,请使用
配置--禁用mincore

/configure——禁用mincore


我无意中发现这个页面试图遵循默认设置。如卡洛·伍德所述


这已经不起作用了。cppunit.m4已从libcppunit-dev中删除

这是真的,我按照下一个答案没有用,没有
cppunit.m4
,错误是你甚至不需要AM\u PATH\cppunit,只要使用

ProgramName_LDADD = -lcppunit
而不是
ProgramName\u LDFLAGS=$(CPPUNIT\u LIBS)

此外,我不知道剩下的
Makefile.am
是否真的是必需的,这就是我最后使用的Makefile

Makefile.am

TESTS = MoneyApp
bin_PROGRAMS = $(TESTS)
MoneyApp_SOURCES = ...
MoneyApp_CXXFLAGS = $(CPPUNIT_CFLAGS)
MoneyApp_LDADD = -lcppunit
和config.ac

AC_INIT([MoneyApp], 1.0)
AM_INIT_AUTOMAKE
AC_PROG_CC
AC_PROG_CXX
AC_CONFIG_FILES(Makefile)
AC_OUTPUT

希望这对将来的人有所帮助。

是的,
-I
做了这个把戏,现在我得到了
配置:19214:错误:可能是未定义的宏:LT\u SMP\u CACHE\u BYTES
。无论如何,我会先进行自己的研究。谢谢你帮我做这件事。这已经不起作用了。cppunit.m4已从libcppunit-dev中删除。即使他们没有为cppunit使用pkg config,您仍然应该使用AC_CHECK_LIB([cppunit],[main])或类似的东西对其进行测试:“pkg_CHECK_模块([cppunit],[cppunit],],AC_MSG_ERROR(请安装库并重试--请参阅黑客文件))”,以便您的用户获得错误(如果使用AC_MSG_WARN,则为警告)告诉他们需要安装CPPFUnit。(请注意,此注释功能不允许我添加换行符以使其更具可读性)