我使用的是 Linux Mint 18 Cinnamon 64 位。
我正要编译file-roller
称为来自源代码的 GNOME 存档管理器。
但运行时:
./autogen.sh
缺少以下 M4 宏:
Checking for required M4 macros... yelp.m4 not found ***Error***: some autoconf macros required to build Package were not found in your aclocal path, or some forbidden macros were found. Perhaps you need to adjust your ACLOCAL_PATH?
答案1
您可以使用apt-file
为此,无需知道 M4 文件的去向:
apt-file search yelp.m4
yelp-tools
即使没有安装包 ( ),也会告诉您特定文件应该位于哪里。
yelp-tools: /usr/share/aclocal/yelp.m4
这告诉您安装yelp-tools
应该允许构建进一步进行。
或者,您可以检查file-roller
Debian 中的构建依赖关系:这yelp-tools
也列出了您需要的所有其他软件包。
在 Linux Mint 18 上apt-file
没有预安装,但安装很容易:
sudo apt-get install apt-file
安装后,您需要使用以下命令更新其数据库:
sudo apt-file update
答案2
首先,我必须弄清楚宏的位置:
aclocal --print-ac-dir
此行的归属到这里。
就我而言,它是:
/usr/share/aclocal
搜索此类文件没有结果:
ls /usr/share/aclocal | grep yelp
于是狩猎开始了:
apt-cache policy yelp*
打包了3个,其中两个已经安装了,所以我安装了缺少的一个:
sudo apt-get install yelp-tools
重复我的搜索:
ls /usr/share/aclocal | grep yelp
给出了结果:
yelp.m4
问题解决了。