歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux autotools的使用

Linux autotools的使用

日期:2017/2/28 16:07:52   编辑:Linux教程

1、執行命令autoscan會生成configure.scan

在configure.scan中修改AC_INIT([name], [Vresion], [mail])

並添加AM_INIT_AUTOMAKE(test, 1.0)

修改AC_OUTPUT為AC_OUTPUT([Makefile])

2、執行autoheader命令生成config.h.in

3、創建Makefile.am文件,添加如下項

AUTOMAKE_OPTIONS=foreign

bin_PROGRAMS=test

CURRENT_PATH=$(PWD)

test_SOURCES=test.c

INCLUDES=-I$(CURRENT_PATH)/include

4、執行命令automake --add-missing

5、執行命令autoconf,這樣就生成configure文件了,執行./configure可以生成Makefile文件

如果程序中依賴其他程序的動態庫,在configure.in裡需要增加該依賴庫選項

AC_ARG_ENABLE(sqlite3,[--enable-sqlite3

use sqlite3],LDFLAGS="${LDFLAGS} -lsqlite3";

CPPFLAGS="${CPPFLAGS} -DWITH_SQLITE3")

或者:

AC_ARG_WITH(sqlite3,

[ --with-sqlite3 use sqlite3],LDFLAGS="${LDFLAGS}

-L$withval/lib -lsqlite3";

CPPFLAGS="${CPPFLAGS} -I$withval/include -DWITH_SQLITE3")

這樣在生成configure後,就可以通過LDFLAGS增加依賴庫的路徑了

附:Makefile.am的有關選項

bin_PROGRAMS=test
test_SOURCEs=test.c
INCLUDES=-I
AM_LDFLAGS=-L
LDADD=(動態庫文件地址)


SUBDIRS=..

Copyright © Linux教程網 All Rights Reserved