`
chinese.darren
  • 浏览: 101117 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Configure, Makefile.am, Makefile.in, Makefile

阅读更多
automake使用过程如下:

1.建目录
        在工作目录下建一个hello目录,用它来存放hello程序及相关文件。
2.编写程序
        利用gedit编写C程序:实现万年历功能的Hello.h和Hello.c程序及主程序Main.c。
3.生成configure
        执行autoscan命令生成一个名为configure.scan的文件,我们拿它作为configure.in的蓝本。将configure.scan改名为configure.in,然后打开configure.in,将文件修改为一下内容:
#               -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.
AC_PREREQ(2.57)
AC_INIT(Main, 1.0, BUG-REPORT-ADDRESS)
AM_INIT_AUTOMAKE(Main, 1.0)
AC_CONFIG_SRCDIR([Hello.h])
AM_CONFIG_HEADER([config.h])
# Checks for programs.
AC_PROG_CC
# Checks for libraries.
# Checks for header files.
# Checks for typedefs, structures, and compiler characteristics.
# Checks for library functions.
AC_FUNC_MALLOC
AC_OUTPUT(Makefile)
        然后先执行aclocal命令,生成aclocal.m4文件,再执行autoconf命令,生成configure文件。
4.执行autoheader命令
        执行autoheader命令,生成config.h.in。这一步非常重要,网上很多的automake生成Makefile方法中都没有包含这一步,然而,缺少这一步将会出错。
5.编写Makefile.am
        新建Makefile.am文件,写入如下内容:
        AUTOMAKE_OPTIONS = foreign
        bin_PROGRAMS = Main
        Main_SOURCES = Main.c Hello.c       
6.运行automake
        使用命令"automake --add-missing" automake会根据Makefile.am产生一些文件,包括最重要的Makefile.in文件。
         7. 执行configure生成Makefile
         执行/.configure命令,即可生成Makefile。
         8.生成可执行文件
         在终端上输入:make,即可生成可执行程序Main。
         9.运行Main
         输入./Main,运行Main程序。
分享到:
评论

相关推荐

    configure.和Makefile.之间的关系

    - **`automake`**: 从 `Makefile.am` 文件中提取结构并生成 `Makefile.in`。 - 如果存在特定宏,则调用 `libtoolize` 来生成额外的配置文件;否则,自动生成 `config.guess` 和 `config.sub`。 - **`autoconf`**:...

    automake.pdf

    GNU Automake的主要作用是简化Makefile的编写工作,开发者只需要编写一些模板文件(通常是configure.ac或者Makefile.am),然后通过Automake工具处理这些模板文件,自动生成Makefile.in文件。之后,当运行configure...

    mooon编译系统介绍(可复用Makefile)

    在使用mooon编译系统时,用户首先需要准备几个关键文件,包括configure.ac.in、Make.rule.in以及主目录和子目录下的Makefile.am文件。这些文件通过bootstrap.sh脚本处理后,会生成相应的Makefile.am文件,此时用户不...

    makefile制作.pdf

    在编写和修改`configure.in`和`Makefile.am`时,开发者需要注意宏的正确使用和顺序,因为宏的执行顺序可能会影响到配置和构建过程。虽然宏的调用顺序不是强制的,但遵循一定的最佳实践可以避免潜在的问题。 总结...

    运用Autoconf和Automake生成Makefile的学习之路

    Autoconf 是一个生成配置脚本的工具,而 Automake 则是一个从文件 `Makefile.am` 自动生成 `Makefile.in` 的工具。它们可以共同生成 Makefile,提高软件开发的效率。 Makefile 的概念 Makefile 是一个文本文件,它...

    使用AutoMake轻松生成Makefile.doc

    接着,创建 "Makefile.am" 文件,这是 AutoMake 的主要输入文件,定义了源文件、目标文件和编译规则。对于简单的 "hello" 示例,"Makefile.am" 可以如下所示: ```makefile bin_PROGRAMS = hello hello_SOURCES = ...

    makefile制作.docx

    运行`automake -a`命令更新`Makefile.in`文件,这一步是基于`Makefile.am`文件进行的。最后,执行`./configure`脚本,它会根据当前系统的配置生成最终的`Makefile`文件。 在`configure.in`文件中,`AC_CONFIG_...

    利用autoconf,automake生成makefile全攻略

    4. **创建 `Makefile.am`**:为每个源代码文件所在的目录创建一个 `Makefile.am` 文件,用于描述构建规则。在项目根目录下创建如下内容的 `Makefile.am`: ```makefile bin_PROGRAMS = MyFirst_EXE MyFirst_EXE_...

    automake autotools autoconf

    `autotools`可以理解为一个流程,包括编写`configure.ac`(`autoconf`的输入)、运行`autoconf`生成`configure`脚本,然后编写`Makefile.am`(`automake`的输入),运行`automake`和`autoheader`生成`Makefile.in`和...

    lidmodbus3.14(解决configure.js错误)

    比如,`configure.ac`和`Makefile.am`是Autotools项目中的核心文件,它们定义了编译和安装的规则。新版本可能对这些文件进行了调整,以适应新的功能需求或改善构建流程。`AUTHORS`文件列出了所有贡献者,向他们表示...

    automake制作makefile

    运行 `automake` 命令根据 `Makefile.am` 文件生成 `Makefile.in`。这个文件包含了具体的构建规则和依赖关系。 7. **./configure 命令** 最后,执行 `./configure` 命令根据 `Makefile.in` 生成最终的 `Makefile...

    automake-1.13.4.tar.gz

    - configure.ac和Makefile.am的语法需要遵循GNU的规范,否则automake可能无法正确处理。 - 修改configure.ac或Makefile.am后,需要重新运行automake和autoconf以更新构建脚本。 总结来说,`automake-1.13.4.tar.gz`...

    automake生成makefile的工具

    当项目中包含Automake文件(通常是Makefile.am)时,Automake会根据这些文件生成Makefile.in模板,这些模板包含了编译和安装程序所需的指令。 **Automake的主要特点:** 1. **遵循GNU标准**:Automake确保项目遵循...

    automake autoconf makefile

    `automake` 是一个辅助工具,它根据 `Makefile.am` 文件生成 `Makefile.in`。`Makefile.am` 文件定义了编译规则,如目标程序、库、安装路径等。例如,`bin_PROGRAMS` 定义了可执行程序的名字,`XXX_SOURCES` 指定...

    使用autotools制作makefile

    8. **处理makefile.am生成makefile.in**:运行automake命令来处理makefile.am文件,并生成makefile.in文件。在这个过程中,可以通过设置AUTOMAKE_OPTIONS来指定软件等级(foreign、gnu或gnits)。 9. **生成最终的...

    例解 autoconf 和 automake 生成 Makefile 文件

    - **规则生成**:`automake`读取`Makefile.am`文件并生成`Makefile.in`,`configure`脚本会进一步处理这个文件。 - **库支持**:`automake`支持静态库和动态库的创建,包括libtool的支持,方便跨平台的库管理。 ...

    自动生成_Makefile_的全过程详解

    6. **配置项目**:依次运行aclocal、autoconf、automake--add-missing等命令,这些命令会依据configure.in和Makefile.am生成configure脚本和Makefile.in文件。 7. **生成Makefile**:运行配置脚本configure,它会...

    automake制作Makefile的模板

    - 打开提供的 myproject 压缩包,解压后可以看到项目的基础结构,包括 configure.ac 和 Makefile.am 文件。 - configure.ac 文件可能包含了一些通用的宏和检测代码,用于设置项目配置。 - Makefile.am 文件是关键...

Global site tag (gtag.js) - Google Analytics