首页 > 其他分享 >如何用autotool构建一个工程

如何用autotool构建一个工程

时间:2023-10-30 16:12:55浏览次数:40  
标签:AC autotool configure 工程 myprint plib autoscan 构建 Checks

本文主要介绍如何用autotool工具构建一个自己的工程,每个工具具体是做什么用的,正常开发中应该在哪里增加相关配置文件等。

编写一个示例

main.c

#include "plib.h"

void main()
{
        myprint();
}

plib/plib.h

void myprint();

plib/plib.c

#include <stdio.h>
void myprint()
{
        printf("aaaaaaaa\n");
}

autoscan

autoscan会根据当前目录下的代码生成autoscan.logconfigure.scan

autoscan.log

记录了宏被调用的详细信息

configure.scan

根据目录下的源码生成的配置文件

#                                               -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.

AC_PREREQ([2.69])
AC_INIT([FULL-PACKAGE-NAME], [VERSION], [BUG-REPORT-ADDRESS])
AC_CONFIG_SRCDIR([main.c])
AC_CONFIG_HEADERS([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_OUTPUT

aclocal

需要configure.ac文件,生成aclocal.m4文件

m4

autoconf

根据configure.in文件生成configure脚本

automake

根据Makefile.am生成Makefile.in

标签:AC,autotool,configure,工程,myprint,plib,autoscan,构建,Checks
From: https://www.cnblogs.com/studywithallofyou/p/17172213.html

相关文章

  • 倾斜摄影三维模型的顶层合并构建重要性分析
    倾斜摄影三维模型的顶层合并构建重要性分析 倾斜摄影超大场景的三维模型的顶层合并对于构建精确、完整且真实的三维模型具有重要的意义和应用价值。本文将从几个方面对其重要性进行浅析。一、模型完整性与连贯性倾斜摄影超大场景的三维模型的顶层合并可以将多个倾斜摄影数据......
  • opencv 4.8.1 wsam 构建&问题说明
    opencv-wasm使用的opencv版本是4.3的,为了使用最新版本的,所以自己基于opencv-wasm提供的脚本构建了一个,同时记录下一些问题以及解决方法构建脚本修改原始使用的是4.3.0版本的,直接修改分支就可以了 gitclone--branch4.8.1--depth1https://github.com/open......
  • 简单c++构建第一人称
    本文内容为UE4.27的文档教程GameMode确定新建的项目会自动生成GameMode,如果有更改,而不是使用默认的GameMode类,就需要在引擎的设置中更改角色的实现前后左右移动//前后MoveForwardvoidAFPSCharacter::MoveForward(floatvalue){ //利用控制器方向寻找前进的方向就是角色......
  • 【程序员转型】从土木工程到 IT 编程,我的十年转型之路
    大家好,明天是1024        十年前,我还是一名土木工程专业的学生。那时的我,对于未来的职业方向感到迷茫和困惑。然而,在一次偶然的机会中,我接触到了IT编程,并深深地被这个领域所吸引。从那时起,我开始了我的转型之路。转行到IT编程职业并不是一件容易的事情。我需要学习新......
  • 【软考】系统集成项目管理工程师(八)项目进度管理【4分】
    一、过程二、规划进度管理1、定义为实施项目进度管理制定政策、程序,并形成文档化的项目进度管理计划的过程;为如何在整个项目过程中管理、执行和控制项目进度提供指南和方向;在项目执行过程中,可能需要更新进度管理计划,以反映在管理进度过程中所发生的变更2、ITO三、定义活动1、定......
  • UniApp实战开发指南:构建跨平台应用的终极选择【UniApp实战】
    UniApp是一个强大的开发框架,可让开发者使用Vue.js构建跨平台应用。本文将介绍UniApp的核心概念和技术深度,并通过一个实例演示如何使用UniApp开发一个简单的待办事项应用。1.介绍UniAppUniApp是DCloud推出的一款基于Vue.js的跨平台开发框架。它允许开发者使用一套代码构建同时运行......
  • 软件工程读后感3-软件需求过程3
    最近,我阅读了掌握需求过程的下一部分。功能性需求描述了产品的动作。它们应该做到能形成一份完整的、尽量避免二义性的产品功能描述。过去,我对于功能性需求的认识不够,将来,我会尽量了解更多有关功能性需求的知识。非功能性需求描述了产品的质量方面的表现——它是否需要快捷、安全......
  • 一些研发工程师在Springboot注意点
    一些研发工程师在Springboot注意点1.正确设计代码目录结构虽然您有很大的自由度,但有一些基本规则值得遵循来设计您的源代码结构。避免使用默认包。确保所有内容(包括入口点)都在命名良好的包中,这样您就可以避免与组装和组件扫描相关的意外情况;将Application.java(应用程序的入口类)......
  • RT-Thread Studio刚新建工程后直接打开main.c编译就board.c里产生报错,解决办法
    如题,RT-ThreadStudio刚新建工程后直接打开main.c编译就产生报错。具体为:刚新建了一个stm32F407ZGT6和一个STM32F103RCT6的工程,之后啥代码也没有改,直接打开main.c文件然后编译,直接报错。报错定位在“drivers/board.c”,再具体定位在代码“RT_WEAK voidrt_hw_board_init()”。......
  • 构建外卖小程序:技术要点和实际代码
    1.前端开发前端开发涉及用户界面设计和用户交互。HTML、CSS和JavaScript是构建外卖小程序界面的主要技术。<!--HTML结构示例--><header><h1>外卖小程序</h1><!--其他导航元素--></header><main><!--菜单显示--><divclass="menu">......