您的位置:首页 > 运维架构 > Linux

linux 自动生成configure和make文件

2016-05-30 14:33 495 查看
我以前是直接写的makefile文件,生成o文件人然后生成执行文件。

但是现在针对于很多文件就会出现文件太多的问题

后来知道了autotools

主要是目录有lib、src、include

目录中文件

├── include

│   └── add.h

├── lib

│   ├── add.cpp

│   ├── Makefile.am

├── Makefile.am

├── src

│   ├── main.cpp

│   ├── Makefile.am

#cat Makefile.am

ACLOCAL_AMFLAGS = -I m4

SUBDIRS = lib src

EXTRA_DIST = autogen.sh

# cat src/Makefile.am

AUTOMAKE_OPTIONS=foreign

INCLUDES = -I../include

bin_PROGRAMS=hehe

hehe_SOURCES=main.cpp

hehe_LDADD=../lib/libadd.a

$ cat lib/Makefile.am

AUTOMAKE_OPTIONS=foreign

INCLUDES = -I../include/

noinst_LIBRARIES=libadd.a

libadd_a_SOURCES=add.cpp

$autoscan

$ cat configure.ac

#                                               -*- 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_INIT(hehe, 0.1)

AM_INIT_AUTOMAKE(hehe, 0.1)

AC_CONFIG_SRCDIR([lib/add.cpp])

AC_CONFIG_HEADERS([config.h])

# Checks for programs.

AC_PROG_CXX

AC_PROG_CC

AC_PROG_RANLIB

# Checks for libraries.

# Checks for header files.

# Checks for typedefs, structures, and compiler characteristics.

# Checks for library functions.

AC_CONFIG_FILES([Makefile

                 lib/Makefile

                 src/Makefile])

AC_OUTPUT

接下来步骤:

 aclocal

 autoconf

 autoheader

 automake --add-missing
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: