我一直试图在Solaris 10框上编译quickfix。但是,当我尝试运行bootstrap时,它会给出大量警告,警告形式为“AM_PATH_AUDIOFILE的警告:引用不足的定义”,然后失败:
aclocal: macro `_LT_DECL_SED' required but not defined
aclocal: macro `_LT_FUNC_STRIPNAME_CNF' required but not defined
configure.ac: 92: macro `AM_PATH_XML2' not found in library'我相当肯定这是一个路径问题,如果我运行aclocal,它在AM_PATH_XML2 not中也会以同样的方式失败,但是如果我运行aclocal -I /usr/local/share/aclocal/,它可以使用引用不足的定义警告,我假设这些警告是可以忽略的。出于某种原因,Solaris似乎将libxml.m4放在/usr/local/share/aclocal中,而不是放在大多数其他.m4文件所在的位置。
如何将此路径传递到bootstrap调用的autoreconf?使用包含路径运行autoreconf无法工作。
发布于 2014-09-08 12:54:52
到达那里
问题在于软件包的版本,特别是m4太旧了,但是除非m4在autoconf之前被更新,否则autom4te会调用一个太旧的m4版本,从而带来麻烦。在应用m4包之后重新应用autoconf包解决了这个问题。
编辑
我必须安装的包列表才能编译libtools m4 autom4te sed (很明显,这是安装的,但是libtools在usr/local/bin中是预期的,而不是usr/bin。如果不安装这个gmake,就会启动7000份libtools,这些工具的路径似乎是sed硬编码的,直到叉子失败为止) perl (同样是usr/local/bin与usr/bin之后,只是导出LD_LIBRARY_PATH的问题。此外,在安装sed之后,还需要重新运行引导和配置,或者gmake启动了7000份libtools。
配置完后,编辑makefile并移除标志-Wno-unused-private-field和gmake实际上可以工作
发布于 2014-09-07 16:41:31
正如自动化手册的使用autoreconf更新配置脚本部分所指出的,您可以通过使用ACLOCAL环境变量指定要传递给aclocal的标志,例如
env ACLOCAL='aclocal -I /usr/local/share/aclocal/' autoreconfhttps://stackoverflow.com/questions/25700171
复制相似问题