Welcome 微信登录

首页 / 操作系统 / Linux / 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.in3、创建Makefile.am文件,添加如下项AUTOMAKE_OPTIONS=foreignbin_PROGRAMS=testCURRENT_PATH=$(PWD)test_SOURCES=test.cINCLUDES=-I$(CURRENT_PATH)/include4、执行命令automake --add-missing5、执行命令autoconf,这样就生成configure文件了,执行./configure可以生成Makefile文件如果程序中依赖其他程序的动态库,在configure.in里需要增加该依赖库选项AC_ARG_ENABLE(sqlite3,[--enable-sqlite3use 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=..理解Linux Load AverageLinux内核下等待队列的使用相关资讯      Linux教程 
  • Linux教程:如何在命令行中查看目  (07/28/2014 12:22:23)
  • Linux 修改root密码  (11/03/2012 07:53:38)
  • su - root 与su root的区别  (06/06/2012 00:39:40)
  • Linux进程间通信:消息队列  (01/28/2013 09:43:00)
  • U盘安装Linux开机无法启动解决方法  (10/07/2012 08:55:52)
  • Windows 7/Linux 同步时间  (05/15/2012 06:17:55)
本文评论 查看全部评论 (0)
表情: 姓名: 字数