zoukankan      html  css  js  c++  java
  • 使用autotools生成makefile

    闲来无事下载了一本书的源码,但又觉得每次都要编译每一个程序很麻烦(后面其实发现,这都只是.c文件并不是大工程,编译每一个C文件比写一个makefile容易多了)。但前几天正好看到了autotools生成makefile的方法,那就练练手吧。废话少说,进入正题。

    首先肯定是下载autotools, 一个yum install autoconf 很简单酒完成了。

    接下来就要正式步骤:

    1,autoscan

    生成了一一个configure.scan文件。编辑它,增加宏声明 AM_INIT_AUTOMAKE(hello,1.0) 和AC_CONFIG_FILES([makefile])

    然后保存为configure.ac。 其实configure.scan就是一个模板。

    PS:这里hello是项目名,可以随便填。1.0是版本号,也就是你代码的版本号,也随便填吧。

    2,aclocal

    这里生成一个aclocal.m4文件,注意咯,网上有的地方在前面AM_INIT_AUTOMAKE这个宏写成AC_INIT_AUTOMAKE,这里会出错不能生成aclocal.m4.

    3,autoconf

    这里生成一个configure文件。

    4,autoheader

    5,automake

    这一步很重要,因为要自己编写makefile.am文件

    AUTOMAKE_OPTIONS= foreign
    bin_PROGRAMS= hello
    hello_SOURCES= hello.c

    第一行是GNU发布软件有自己的规范,有三个选项:foreign,gnu,gnits。如果不写默认为gnu,这样你需要添加各种文件。我们为简单就写这一行。

    第二行是你要生成的可执行文件,有多少写多少,用空格分开。

    第三行既每个可执行文件的依赖文件,file_SOURCES。有多少可执行文件就写多少依赖文件。

    6,automake -a

    7./configure

    8,make install

    一个makefile文件就轻松生成了。

  • 相关阅读:
    [LeetCode]Reverse Linked List II
    [LeetCode]Move Zeroes
    Next Greater Element I
    Keyboard Row
    Number Complement
    SQL语句学习(二)
    SQL语句学习(一)
    jQuery学习(三)
    jQuery学习(二)
    JQuery学习(一)
  • 原文地址:https://www.cnblogs.com/yestreen/p/3078760.html
Copyright © 2011-2022 走看看