我正在尝试在RedHat Linux机器上构建ZooKeeper。 (究竟ZooKeeper可能并不重要: - )

当我按照包裹说明书时,我得到:

 $ 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权限,系统团队 有一个“没有偏差”的政策来自标准配置。)

我通过评论引用来解决这个问题 我的configure.ac文件中的 AM_PATH_CPPUNI T,但我真的想做什么 是在我的个人目录中安装CPPPUNIT并指向它,但我是 在弄清楚如何告诉autoconf / auotmake方面没有取得多大进展 系统在非标准的地方寻找它。任何人都有任何提示 怎么做?

有帮助吗?

解决方案

您想要设置环境变量ACLOCAL_PATH。

ACLOCAL_PATH="/home/YOU/path/to/share/aclocal" autoreconf -if

要确定您需要将ACLOCAL_PATH指向哪个目录,您必须找到包含定义AM_PATH_CPPUNIT的.m4文件的目录。

其他提示

在我的情况下,由于缺少包cppunit-devel,我收到此错误。通过 yum -y install cppunit-devel 在我的centos服务器上安装此软件包后,一切运行良好。

如果路径变量无法添加到您的个人资料或环境......或者您有什么,您可以尝试“导出”。运行autoconf之前的路径。这将设置该选项,至少为该会话...

export ACLOCAL_PATH=/home/YOU/path/to/share/aclocal

另外,如果push推进,你可以......(这会清除你的makefile,autoconf / configure命令给你带来的任何非工作垃圾...)

make clean

然后打开你的“./ configure”脚本,它是文本编辑器中的小朋友(任何名为“configure。*”)的..然后,有点小心地“查找并替换”什么“事情”的实例搞砸了你。一旦你修改了指令中的coNfigure脚本,然后再次运行它们......运气好的话,make文件将在你的环境中运行。

注意:这是我在MAC上执行的操作,通常用于编译未经测试或打算在Mac上运行的LINUX SW。这可能是错误的做法,但是当没有很多选择的时候,有时你只需要进入并捣乱它。

如果是多个路径,请使用:separator添加它们。 像:

export ACLOCAL_PATH="/usr/share/aclocal/:/usr/local/share/aclocal"
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top