问题标签 [m4]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
492 浏览

git - 无法从 GNOME gftp 应用程序中的构建错误中恢复

谷歌搜索后发现需要安装 glibc 和 gtk 包。所以尝试安装,但已经安装了软件包。所以运行 aclocal 来生成 *.m4,但仍然无法构建从 GIT 存储库下载的 GNOME gftp 应用程序。请帮助解决这个问题,以便我可以构建并开始为 GNOME gftp 做出贡献。

0 投票
2 回答
127 浏览

autotools - 在 AC_MSG_ERROR([foo]) 中处理行尾(回车、EOL)

所以我需要在我的 .m4 文件中使用这个 autoconf 宏,这样:

出于充分的理由,该错误消息有点长。

今天,我刚刚决定要在消息中添加更多额外信息。但我不想让线路更长!所以我想把它分成不同的行。我尝试的第一件事是:

当然,这种解决方案并不理想,因为在显示消息时,它会被不必要地缩进。解决此问题的唯一真正解决方案是使用这种丑陋的方法:

但是,正如我所说,这很丑陋。而且我敢打赌,将来某些开发人员会将其更改为“修复缩进”,而并不知道他们实际上正在破坏它。

有没有办法做到这一点,或者我会讨厌自动工具,直到时代结束?

0 投票
2 回答
117 浏览

unix - GNU 包相互依赖

我想安装autoconf在 HP-UX 服务器上,我下载autoconf-2.58并运行configure了以下内容: 在此处输入图像描述

所以我下载m4-1.4并尝试安装它。configure没关系,但运行make我得到: 在此处输入图像描述

那么m4-1.4需要autoconf安装吗?但同时autoconf需要m4-1.4

我该怎么办 ?

0 投票
0 回答
1713 浏览

mpi - autoconf 因“错误:m4_defn:未定义的宏:_m4_divert_diversion”而停止

我正在构建 OpenMPI-1.6.5。运行 autogen.sh 后,出现以下错误:

可能是什么问题?

我有工具:automake 1.10.1、autoconf 2.63、m4 1.4.12

任何帮助将不胜感激。

最好的,亚历克斯

0 投票
1 回答
6546 浏览

c - make 找不到 sys/signal.h

我正在尝试安装m4在 MINGW

正常结束后./configure我尝试make但发生错误。

signal.h\c\mingw\includePATH 环境中设置。

我怎么知道make在哪里signal.h

0 投票
1 回答
267 浏览

makefile - 我可以在 configure.ac 中定义安装规则/安装挂钩吗

假设有一堆(例如近 200 个)模块都依赖于一个核心模块。所有人都在使用Autotools。

核心模块安装了一个 core.m4 文件,依赖项已经用于各种事情。

所有依赖项在其 install-data-local 规则中也有一些行来生成一些脚本并安装它们,例如

我想删除目前冗余重复的超过 200 个文件的那五行,而是在 core.m4 中定义这些行。家属应该能够说出类似的话SOMEVAR: somevalue(或类似简短的话,最糟糕的是 install-data-local 中的单行内容)并在 make install 期间执行这些行。

有没有一种很好的方法可以在 core.m4 中定义这些行并使它们可用于 Makefile.am?我在网上找不到任何类似的例子。

我现在能想到的唯一解决方案是 m4 吐出一个我可以从 install-data-local 调用的 shell 脚本,但我不确定这是最好的(或最自动化的)方式。

或者,是否有一种简单的方法可以fragment.am从我的核心模块分发 automake 文件?(这似乎是定义 Python 编译规则的方式。)

0 投票
1 回答
169 浏览

cross-compiling - 如何在 AC_TRY_RUN 中使用“test STRING1 = STRING2”?

我正在尝试修补configure.in文件以便为某个包启用交叉编译。到目前为止,我只是在修补AC_TRY_RUN宏,以使它们能够跳过编译代码的执行并使用包含测试结果的预定义变量,该变量应该先验运行。

在文件的开头,我插入了这样的行:

然后,我正在使用这样的第四个参数AC_TRY_RUN

但它不起作用。尽管 $CROSSCTEST 是yes,但test ...永远不是真的。我还尝试了另一种方法:

......它也不起作用。我在这里错过了什么吗?您是否认为有更好的方法来修补 a configure.inas 以启用交叉编译?

0 投票
1 回答
1173 浏览

c++ - 如何告诉 AC_SUBST 不要替换参数中的变量?

我正在使用自动工具来构建我的项目,并且我想将 AM_CPPFLAGS 全局设置为 -I$(top_srcdir)/include。

https://stackoverflow.com/a/325436/2592351这个答案帮助了我,我正在做“include $(top_srcdir)/include” hack,它可以工作。

但是我想做那里描述的“AC_SUBST”方式,因为它看起来更干净。问题是当我将它添加到我的 configure.ac 时:

然后 $(top_srcdir) 扩展得太快,我得到 AM_CPPFLAGS = -I/include in subdir/Makefile{,.in}。

而且我不知道如何逃脱它。

由于各种原因,所有这些都失败了。

请帮忙。我应该如何编写 AC_SUBST 以便 $(top_srcdir) 在到达 Makefile{,.in} 之前不会被转义?或者也许我应该使用 AC_SUBST 以外的东西?

0 投票
2 回答
15759 浏览

unix - 在 unix 上构建 m4、autoconf、automake、libtool

我正在尝试在 HP-UX 服务器上设置 PHP、apache 环境。安装时我使用“./configur, make, make install”的常用命令。在这里,当我尝试安装 PCRE 时,出现如下错误。

因此,我下载了最新版本的“m4、autoconf 和 automake”源代码并尝试使用常用的 make 命令进行安装。

首先,我尝试通过要求安装“autoconf”的错误来安装“automake”然后我尝试再次安装autoconf它要求安装“m4”然后我尝试通过上面列出的相同错误现在安装“m4”。所以它变成了一组相同的错误循环,不允许我安装。

谁能帮我解决这个问题。请考虑这是一个 HP-UX unix 服务器,所以不要推荐著名的 ubuntu“apt-get install”命令或 red hat 特定命令。

0 投票
1 回答
231 浏览

m4 - m4 预处理器 BC 宏

相对于这个问题,我想定义BC该函数的 m4 宏:

注意:它只是处理算术运算bc,例如:syscmd(bc <<< "scale=6; print 1.2*2") => 2.4

我猜是这样的:

但是如何在 BC 参数中扩展其他变量,例如:

谢谢