Autoconf/Automake自动创建Makefile文件

gnu make automake autoconf GNU的make automake autoconf libtool说明书 立即下载

Autoconf/Automake工具自动生成Makefile    

       在linux下编程的时候,有时候工程项目很大,文件比较多,此时需要使用自动创建Makefile文件功能。也就是使用Autoconf/Automake工具自动生成Makefile.当前大多数软件包都是用此方法生成。

      下面进行一个简短的介绍。参考例程,很快就可以学会。

      Autoconf/Automake工具组主要包括autoconf,automake,perl,m4;其默认安装的软件包信息如下:

    所用到的五个命令所在的位置如下:

 

Autoconfig/Automake工具使用实例

一、首先建立编写一个C源程序文件,命名为hello.c,其代码很简单,就是hello world!程序。

二、使用Autoscan工具生成config.ac文件.

 

该文件的简要说明如下:

1、  AC_PREREQQ宏声明本文件要求的autoconf版本,这里是2.63

2、  AC_INIT定义软件的名称和信息。(DULL-PACKAGE-NAME为软件名,VERSION为软件的版本号,BUG-REPORT-ADDRESS为bug的报告地址,一般为软件作者的邮箱)

3、  AC_CONFIG_SRCDIR用来侦测指定的源码文件是否存在,确定源码目录的有效性。此处为当前目录下hello.c

4、  AC_CONFIG_HEADER用于生成config.h文件,以便autoheader使用

5、  AC_PROG_CC用来指定编译器,以便不指定的时候默认为gcc

6、  AC_OUTPUT用来设定config要产生的文件。如果是Makefile,config会把它检查出来的结果带入Makefile.in文件产生合适的Makefile.

三、获得并且修改configure.ac

#cp configure.scan configure.ac

并作以下的修改

这里注意重要的一点:AM_INIT_AUTOMAKE宏需要自己进行添加,它是automake所必备的宏。

 

三、使用aclocal工具生成aclocal.m4

四、使用autoconf工具生成configure文件

五、使用autoheader工具生成config.h.in文件

六、创建Makefile.am文件

Automake工具会根据config.in中的参量把Makefile.am转换成Makefile.in文件。在使用Automake之前,要先手动建立Makefile.am文件。

几点需要说明:

1、AUTOMAKE_OPTIONS为设置的Automake选项。它有三种等级提供给用户选择:foreign,gnu,gnits,默认等级为gnu.在此使用foreign,它只检测必须的文件。

2、bin_PROGRAMS定义要产生的执行文件名。如果要产生多个可执行文件,则每个文件名用空格隔开。

3、hello_SOURCES定义为hello这个程序所需要的原始文件。如果其石油多个文件组成的,则必须用空格进行隔开。

七、使用Automake生成Makefile.in文件

要使用选项“--add-missing”可以让Automake自动添加一些必要的脚本文件。如下

八、配置。

运行自动配置设置文件configure,把Makefile.in编程最终的Makefile

九.测试

运行Make命令进行编译。然后运行hello程序。

OVER!!!!

 

 

EtherCAT总线运动控制学习笔记(RXXW_Dor) 说到总线控制,就要说到报文、对象字典、PN通信我们大部分会说报文,EtherCAT通信我们常说对象字典,叫法不一样,但是原理基本一致,下面我们简单认识下上面是对象字典。 阅读详情

相关推荐

电机控制中ADC采样时序的优化策略与实践

本文深入探讨了电机控制中ADC采样时序的优化策略与实践,重点分析了BLDC和FOC控制方案中的核心挑战与解决方案。通过硬件布局优化、软件滤波技术及动态时序补偿等方法,有效提升电流采样精度和系统稳定性,为电机控制系统的性能优化提供实用指导。

weixin_42519985的博客 387

Linux安装git和maven的详细过程

一、使用yum安装git 当前安装环境是centos6.5 由于在CentOS6的yum源中已经有git的版本了,可以直接使用yum源进行安装 yum -y install git 由于centos6的yum源中安装的git版本是1.7.1的,Github等需要的Git版本最低都不能低于1.7.2 。所以我们一般不用上面的方法,而是下载git源码编译安装。 二、编译安装git...

weixin_34413103的博客 607

Linux-VMware安装后没有虚拟网卡VMnet1和VMnet8(亲测有效,一步一步跟着绝对成功)

VMware-安装后没有虚拟网卡VMnet1和VMnet8 就这个破东西我昨天弄了一天,网上什么VMware卸载重装,用CCleaner清理注册表什么的操作我全用了,但是昨天就是弄不好,同样的操作我昨天试了无数遍一直觉得可能是 持续更新中… 文章参考学习地址:https://blog.csdn.net/qq_42445139/article/details/87872130 ...

杨的博客 8852

Linux 命令详解(三)./configure、make、make install 命令

Linux 命令详解(三)./configure、make、make install 命令 这些都是典型的使用GNU的AUTOCONF和AUTOMAKE产生的程序的安装步骤 一、基本信息   1、./configure 是用来检测你的安装平台的目标特征的。比如它会检测你是不是有CC或GCC,并不是需要CC或GCC,它是个shell脚本。 2、make 是用来编译的,它从Makefile中读取指令,...

qq_15173805的博客 366

zabbix添加IBM服务器SNMPV3监控

本地采用欧冠的是zabbix5.0,服务器型号是SR860,使用snmpv3因为只支持这个,醉了。说明:本地采用欧冠的是zabbix5.0,服务器型号是SR860。

萌新包大人的博客 1985

03 - AMDGPU驱动架构概览

本文介绍了AMDGPU驱动的整体架构,重点分析其图形驱动(AMDGPU)和计算驱动(KFD)的双重结构。KFD驱动作为HSA架构的核心组件,包含进程管理、设备管理等模块,其中SVM功能在kfd_svm.c实现。文章详细解析了KFD的核心组件、初始化流程及字符设备接口,并阐述了TTM框架在GPU内存管理中的作用。通过架构图和代码片段展示了AMDGPU与KFD的协作机制,为后续深入理解SVM实现奠定基础。

图形/计算GPU的驱动与虚拟化技术分享园地 3373

跟涛哥一起学嵌入式 18:Autotools发展史

在linux下面撸过代码、做过开发的,想必都听说过Makefile。 对,是Makefile,不是make love。如果你看成了后者,只能说:同志,你的三观有问题,需要格式化你的硬盘! 在linux开发程序,没有集成开发环境IDE(integrated development environment),没有VC++6.0, 只有Makefile和冰冷黑漆漆的shell窗口,寒冷的夜...

宅学部落-王利涛 978

AI智算-K8s+vLLM & Ray:DeepSeek-r1 671B 满血版分布式推理部署实践

自从上次发布 【AI-智算】K8s+SGLang实战:DeepSeek-r1:671b满血版多机多卡私有化部署全攻略] 文章后,本次将演示另一个主流推理引擎工具——vLLM,结合K8s、LWS、Ray、Volcano等技术栈,部署DeepSeek-r1 671b 满血版分布式推理集群,并对比其与SGLang推理引擎的性能表现。

Kason_iWiki 1826

【Makefile】自动生产makefile的工具autotools(autoconf和automake)

前言 make工具,我们可以将大型的开发项目分解成为多个更易于管理的模块,使用make和 makefile工具理顺各个源文件之间纷繁复杂的相互关系。 手工编写Makefile,对任何程序员都是一场挑战。Autoconf及Automake这两套工具使得编写makefile不再是一个难题。 利用 GNU Autoconf 及 Automake 这两套工...

小鱼菜鸟的博客 937

RT-DETR改进策略【Neck】| GFPN 超越BiFPN 通过跳层连接和跨尺度连接改进RT-DETR颈部网络

本文记录的是利用颈部结构优化RT-DETR的目标检测网络模型。利用改进后的颈部网络,通过跳层连接,避免了在进行反向传播时的梯度消失问题,并且引入跨尺度连接,可以实现不同级别和层次的特征充分融合,获取足够的高层语义信息和低层空间信息交换,从而在大规模变化场景下提高检测性能。GIRAFFEDET: A HEAVY-NECK PARADIGM FOR OBJECT DETECTION-GFPN包含了上述的跳层连接(dense-link和log2nlog _{2} nlog2​n-link)以及跨尺度连接(Quee

Limiiiing的博客 2229

ruoyi-nbcio-plus基于vue3的flowable服务任务的升级修改

ruoyi-nbcio-plus基于vue3的flowable服务任务的升级修改

宁波阿成的博客 847

Makefile、configure是如何生成的

1.autoscan (autoconf): 扫描源代码以搜寻普通的可移植性问题,比如检查编译器,库,头文件等,生成文件configure.scan,它是configure.ac的一个雏形。 2.aclocal (automake):根据已经安装的宏,用户定义宏和acinclude.m4文件中的宏将configure.ac文件所需要的宏集中定义到文件 aclocal.m4中。aclocal是一个perl 脚本程序,它的定义是:“aclocal - create aclocal.m4 by scanni.

sdwxy的博客 2973

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

自动创建makefile文件的过程(Autoconf/Automake的使用)

创建源码文件,使用"autoscan"生成configure.scan文件,重命名为configure.ac,并做适当的修改,使用aclocal命令生成aclocal.m4,使用autoconf命令将configure.ac 和 aclocal.m4文件生成configure文件手工编辑Makefile.am文件,使用automake命令生成configure.in文件手工编辑或者由系统给定acc...

qq_28130961的博客 448

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

autoconf 和 automake 生成 Makefile 文件学习

引子无论是在Linux还是在Unix环境中,make都是一个非常重要的编译命令。不管是自己进行项目开发还是安装应用软件,我们都经常要用到make或 make install。利用make工具,我们可以将大型的开发项目分解成为多个更易于管理的模块,对于一个包括几百个源文件的应用程序,使用make和 makefile工具就可以轻而易举的理顺各个源文件之间纷繁复杂的相互关系。

树袋大熊的专栏 1993

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Linux下使用autoconf自动生成makefile文件

系统信息:Centos7 autoconf可以自动帮我们的程序生成makefile文件,非常方便 安装失败的话可能是源配置出错

喵呜 784

Autoconf/Automake自动化工具的使用——多文件同目录

1.Autoconf/Automake工具介绍     Autoconf/Automake工具用于自动创建功能完善的Makefile文件。当前大多数软件包都用此工具生成Makefile文件。本节首先介绍Autoconf/Automake工具的功能以及Makefile创建过程中所涉及的文件和命令。最后以一个实例介绍如何使用Autoconf/Automake工具自动创建Makefile文件。

笨笨的企鹅的专栏 2816

Autoconf和Automake工具组简介

Autoconf/Automake工具用于自动创建功能完善的makefile文件。当前大多数软件包都是用这一工具生成makefile文件的。本节首先介绍Autoconf/Automake工具的功能以及makefile创建过程中所涉及的文件和命令。最后以一个实例介绍如何使用Autoconf/Automake工具自动创建makefile文件。 Autoconf/Automake工具组简介 Auto...

ruan2012的专栏 224

automake autoconf 生成Makefile

转自新浪微博 Linux下的程序开发人员,都遇到过Makefile,用make命令来编译自己写的程序确实是很方便。一般情况下,大家都是手工写一个简单Makefile,如果要想写出一个符合自由软件惯例的Makefile就不那么容易了。   在本文中,将给大家介绍如何使用 autoconf和automake两个工具来帮助我们自动地生成符合自由软件惯例的Makefile,这样就可以象常见...

dingjing032436的博客 146

例解 autoconf 和 automake 生成 Makefile 文件

引子 无论是在Linux还是在Unix环境中,make都是一个非常重要的编译命令。不管是自己进行项目开发还是安装应用软件,我们都经常要用到 make或 make install。利用make工具,我们可以将大型的开发项目分解成为多个更易于管理的模块,对于一个包括几百个源文件的应用程序,使用make和 makefile工具就可以轻而易举的理顺各个源文件之间纷繁复杂的相互关系。 但是如果通...

weixin_34342207的博客 80

Autoconf/Automake

Autoconf/Automake 工具用于自动创建功能完善的Makefile文件。当前大多数软件包都用此工具生成Makefile文件。 Autoconf/Automake 工具组主要包括:autoconf、automake、perl、m4。 话不多话,通过一个简单的实例来展示其使用: 1.检测工具组是否安装: 2.使用Emacs编辑源程序: 3.使用Autoscan工具生成co

有规律的世界 478

Autoconf/Automake工具简介

在linux下编程的时候,有时候工程项目很大,文件比较多,此时需要使用自动创建Makefile文件功能。也就是使用Autoconf/Automake工具自动生成Makefile,为编译程序带来了方便,当前大多数软件包都是用此方法生成,Autoconf/Automake工具组主要包括autoconf,automake,perl,m4。 Autoconfig/Automake工具使用实例 一、首先

king110108的专栏 546

autoconf、automake工具组使用简单介绍

Autoconf、automake工具组使用简单介绍 Autoconf、automake工具组是Unix/Linux下编译大型项目的有力工具。使用它们可以省去我们手工编写makefile文件的麻烦,而且还能提高可靠性和项目移植性。在这里简单介绍automake工具组的使用。 以大家都熟知的helloworld为例,首先建立专门的目录,如helloworld, $ mkdir h...

weixin_30800987的博客 83

Autoconfig/Automake工具使用实例

转载:http://www.cnblogs.com/xf-linux-arm-java-android/p/3590770.html  在linux下编程的时候,有时候工程项目很大,文件比较多,此时需要使用自动创建Makefile文件功能。也就是使用Autoconf/Automake工具自动生成Makefile,为编译程序带来了方便,当前大多数软件包都是用此方法生成,Autoco

scuchen12345的专栏 622

Linux 下 Makefile 的 automake 生成举例 "hello world"

//在unbutu10.10测试过,可以正常运行,关键步骤已经用红色标出 使用 Vi编辑器编辑源程序,手动创建hello.c 在 Linux 操作 Shell 提示符使用 Vi 编辑器下创建 hello.c 源程序。 [root@localhost ch0206]#

moonshine99的专栏 857

大型项目使用Automake/Autoconf完成编译配置

大型项目使用Automake/Autoconf完成编译配置 使用过开源C/C++项目的同学们都知道,标准的编译过程已经变成了简单的三部曲:configure/make/make install, 使用起来很方便,不像平时自己写代码,要手写一堆复杂的Makefile,而且换个编译环境,Makefile还需要修改(Eclipse也是这样)。 这么好的东东当然要拿来用了,但GNU的Au...

weixin_34236869的博客 254
上一篇: 虚拟机linux在崩溃的情况下取出其中的资料
下一篇: 养成C编程良好习惯(不断更新.......)
ssdsafsdsd
博客等级 码龄15年 154粉丝 94原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值