--------------------------------------------------------------------------------------

GNU M4介绍:

GNU M4 是一个传统Unix宏处理器的实现。它主要兼容 SVR4,尽管它有一些扩展(例如,处理超过9个位置参数的宏)。GNU M4 同样有内置的函数用来包含文件,运行shell命令,做算术运算,等等。

GNU M4 在某种意义上来说是一个宏处理器,它复制输入到扩展的宏后输出。宏既不是内置也不是用户定义的,并且能带任意个数的参数。除了做宏扩充,m4有内置的函数用来包含命名的文件,运行UNIX命令,做整数运算,用各种方式操作文本,递归等... m4本身既可以用来作为一个编译器的前端也可以作为一个宏处理器。

GNU M4 其中一个最大的使用者是 GNU Autoconf 项目。

下载M4:

最近稳定版是1.4.17,可以在 http://ftp.gnu.org/gnu/m4/ 和 ftp://ftp.gnu.org/gnu/m4/ 上找到。也可以在其中一个我们的FTP镜像。稳定版开发分支同样可以从git上检出,使用下面的:

git clone git://git.sv.gnu.org/m4 或 git clone http://git.savannah.gnu.org/r/m4.git
git checkout -b branch-1.6 origin/branch-1.6

文档:

GNU M4文档可以在http://www.gnu.org/software/m4/manual/找到。你同样可以通过查找本地文档找到更多关于GNU M4的信息。例如,你可以查看 /usr/share/doc/m4/,或在shell提示符使用 info m4

邮件列表:

GNU M4 有几个邮件名单: <bug-m4@gnu.org><m4-discuss@gnu.org><m4-patches@gnu.org>, and <m4-announce@gnu.org>。这些名单的存档是可用的;通过链接到的存档查看每个名单的详情。

你可以用下面描述的方式通过web订阅任何GNU邮件名单。或者你可以发送一封仅含主题为"subscribe"这个标题的空邮件到相关请求名单。例如,要订阅到bug-m4名单,你要发送邮件到bug-m4-request@gnu.org,不需要内容和主题名称是:"subscribe"。

通告:

小量的邮件列表m4-announce 包含所有关于GNU M4的通告。重要的M4通告和大多数其他GNU软件同样由  <info-gnu@gnu.org> 产生。

开发跟踪:

数量适中的邮件列表bug-m4 跟踪所有bug报告。有关提交的bug的更多信息,请看下面的报告bug部分。

请求改进:...

报告Bug:...

维护人员:...

Translate From:http://www.gnu.org/software/m4/m4.html

Link:http://www.cnblogs.com/farwish/p/4899676.html

GNU M4 - GNU Project - 免费软件基金会(FSF)的更多相关文章

  1. 在远程登陆的主机上通过命令行源码编译安装 GNU M4、autoconf、automake 等程序

    由于实验需要,最近获得了一个实验室服务器的账号,平常主要通过 ssh 进行远程登陆进行实验.一方面,远程登录的机器只提供终端界面,一般只通过命令行进行任务操作:另一方面,由于是多人共享服务器,故而个人 ...

  2. GNU m4 教程[转]

    原文:http://blog.csdn.net/timekeeperl/article/details/50738164 作者:garfileo  作者主页 本文整理自:https://segment ...

  3. 使用autoconf和automake生成Makefile文件(转)

    Makefile好难写 曾经也总结了一篇关于Makefile的文章<make和makefile的简单学习>.但是,总结完以后,发现写Makefile真的是一件非常痛苦的事情,的确非常痛苦. ...

  4. linux下使用autoconf制作Makefile

    第一步:常用工具安装:正所谓:"工欲善其事,必先利其器".我们常用的工具主要有GNU AutomakeGNU AutoconfGNU m4GNU Libtool1.查看自己系统中是 ...

  5. x86、Linux、GNU、GNOME是什么

    一.指令集架构: 指令集架构(英语:Instruction Set Architecture,缩写为ISA),又称指令集或指令集体系,是计算机体系结构中与程序设计有关的部分,包含了基本数据类型,指令集 ...

  6. GNU 项目(开源社区的由来,背后的哲学)

    转自译言网:http://article.yeeyan.org/view/88497/59257/ 第一个软件共享社区 当我在1971年开始在麻省理工人工智能实验室工作时, 我成为一个已经存在多年的软 ...

  7. GNU/Linux与开源文化的那些人和事

     一.计算机的发明 世上本无路,走的人多了,就有了路.世上本无计算机,琢磨的人多了--没有计算机,一切无从谈起. 三个人对计算机的发明功不可没,居功至伟.阿兰·图灵(Alan Mathison Tur ...

  8. 什么叫做GNU

    GNU就是GNU's Not Unix的缩写, GNU 的创始人Stallman 认为UNIX 虽然不是最 好的操作系统,但是至少不会太差,而他自信有能力把UNIX不足的地方加以改进,使它 成为一个优 ...

  9. GNU与Linux

    GNU是自由软件之父 Richard Stallman在1984年组织开发的一个完全基于自由软件的软件体系,与此相应的有一分通用公共许可证(General Public License,简称GPL). ...

随机推荐

  1. Hbase预分区种子生成

    提前生成Hbase预分区种子,在创建Hbase表时也进行相应的预分区,同时设置预分区的个数,预分区的范围对应Hbase监控页面的Region Server的start key与End key,从而使数 ...

  2. php 二维数组(没啥技术含量)

    <?php $cars = array( array('benchi',20,18), array('baoma',30,21), array('aodi',23,9) ); echo $car ...

  3. linux shell中的&& || 和()

    1. linux命令返回值介绍 shell 在执行某个命令时,会有一个返回值,该值保存在shell变量$?中.当$?为0时,表示命令执行成功:当$?为1时,表示命令执行失败. 2. && ...

  4. dom4j生成xml

    package com.yunfengtech.solution.business; import java.io.FileOutputStream; import org.dom4j.Documen ...

  5. SQL Server2008创建约束图解

    机房收费系统个人重构版开始了,但在设计数据库时遇到了写小麻烦,主要是数据库中约束的应用,以前在学习数据库时进行了总结,在刚开始学习时使用的是SQL Server2000 小操作了下,查证了几种约束的作 ...

  6. Bootstrap 4 中 Alerts 实现

    Alert 的使用说明 http://v4-alpha.getbootstrap.com/components/alerts/ JavaScript behavior Triggers Enable ...

  7. hbase运行shell时ERROR:org.apache.hadoop.hbase.PleaseHoldException: Master is initializing 的解决办法

    这个问题困扰了我一天多的时间,百度搜索的前几条的答案也是很扯淡的,说什么把/etc/hosts文件下的127.0.1.1改成127.0.0.1就行了,我也只能呵呵了.今天早上起得很晚,中午迪哥请我们去 ...

  8. 异常:Message 850 not found; No message file for product=network, facility=NL解决方案

    一.异常信息:   Message 850 not found; No message file for product=network, facility=NL    二.解决方案:     后来在 ...

  9. javascript立即执行函数 (function(){})()

    看到一段代码: (function(){ var outer = $('#subject'); outer.find('li').on('mouseover', mouseover); })() ( ...

  10. 【JavaScript】前端插件

    树形结构: http://www.jeasyui.com/documentation/index.php 网上有对这个插件的说明,总的来说这个插件将selected和checked作为两种状态: 1. ...