感谢支持
我们一直在努力

Linux autotools的使用

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=..

赞(0) 打赏
转载请注明出处:服务器评测 » Linux autotools的使用
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏