关闭

linux 自动生成configure和make文件

120人阅读 评论(0) 收藏 举报
分类:

我以前是直接写的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

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:32107次
    • 积分:849
    • 等级:
    • 排名:千里之外
    • 原创:51篇
    • 转载:10篇
    • 译文:1篇
    • 评论:13条
    最新评论