如何转义 autoconf/m4 中的文本?
我的configuration.ac 文件中的以下代码不起作用(请注意带有 [default=no] 的嵌套方括号):
AC_ARG_ENABLE(debug,
[ --enable-debug build with debugging support [default=no].],
[DEBUG="$enableval"],
[DEBUG="no"]
)
如何转义这些括号?
The following code from my configuration.ac file does not work (note the nested square brackets with [default=no]):
AC_ARG_ENABLE(debug,
[ --enable-debug build with debugging support [default=no].],
[DEBUG="$enableval"],
[DEBUG="no"]
)
How can I escape those brackets?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
找到了!来自此教程:
因此,我的新代码是:
Found it! From this tutorial:
My new code is therefore:
括号
是一种转义字符,因此与'\'
一样,您可以使用括号转义括号[]
,例如:注意:[[ ]default=no[ ]] 可能无法按您的预期工作,因为 m4 应该从末尾搜索 end_bracket。它应该扩展为
[ ]default=no[ ]
。Brackets
are kind of escape characters, so as you do for'\'
, you may escape brackets[]
with brackets, eg :Note: [[ ]default=no[ ]] may not work as you expect as m4 should search the end_bracket from the end. It should so be expanded to
[ ]default=no[ ]
.使用 AC_HELP_STRING
use AC_HELP_STRING