我正尝试在RedHat Linux机器上构建ZooKeeper。(ZooKeeper到底是什么可能并不重要:-)
当我按照 Package 说明操作时,我得到:
$ autoreconf -if
aclocal:configure.ac:33: warning: macro `AM_PATH_CPPUNIT' not found in library
aclocal:configure.ac:33: warning: macro `AM_PATH_CPPUNIT' not found in library
configure.ac:33: error: possibly undefined macro: AM_PATH_CPPUNIT
If this token and others are legitimate, please use m4_pattern_allow.
See the Autoconf documentation.
autoreconf: /usr/bin/autoconf failed with exit status: 1
我无法在标准位置安装CPPPUNIT。(没有root权限,系统团队有一个政策,即“不偏离”标准配置。)
我已经通过注解掉www.example.com文件中对AM_PATH_CPPUNI
T的引用来解决这个问题configure.ac,但是我真正想做的是在我的个人目录中安装CPPPUNIT并指向它,但是在弄清楚如何告诉autoconf/autmake系统在非标准位置查找它方面,我没有取得多大进展。
5条答案
按热度按时间qmelpv7a1#
您需要设置环境变量ACLOCAL_PATH。
要确定ACLOCAL_PATH需要指向哪个目录,必须找到包含定义AM_PATH_CPPUNIT的.m4文件的目录。
ee7vknir2#
在我的例子中,我得到这个错误是因为缺少cppunit-devel包。在
yum -y install cppunit-devel
将这个包安装到我的centos服务器上后,一切都运行良好。omqzjyyz3#
如果路径变量不能添加到您的配置文件或环境中,您可以尝试在运行autoconf之前“导出”路径。这将设置该选项,至少对于该会话...
另外,如果需要的话,您可以...(这会清除掉autoconf/configure命令留给您的Makefile中任何不工作的垃圾...)
打开你的./configure脚本,它是文本编辑器中的小朋友(任何名为“configure.*”的东西)。然后,稍微小心地“查找和替换”任何让你混乱的东西的示例。一旦你修复了配置脚本中的指令,并再次运行它们......幸运的是,你的make文件将在你的环境中工作。
ru9i0ody4#
如果有多个路径,请使用以下命令添加它们:分隔符。例如:
dluptydi5#
对于Debian 11和Ubuntu 22.04,我只运行:
sudo apt-get install libcppunit-dev
现在它起作用了