-
使用autoscan aclocallibtoolize autoheader automake autoconf等工具管理项目的一般方法
http://www.ibm.com/developerworks/cn/linux/l-makefile/
( 参考别人的 )
- 增加自己的C文件和静态库
- 在目录下增加gb目录,用来存放自己的C文件;增加一个include目录用来存放头文件;增加一个lib目录用来存放第三方的静态库文件。
- 修改项目目录下的configure.ac文件内容,增加编译gb目录代码的编译开关
AC_ARG_ENABLE(gb,
[ --enable-gb Build gb-test ( requires GTK ) [default=no]],
enable_gb=$enableval,
enable_gb=no) - 在下面项里增加自己的子目录,就能在这个目录下生成Makefile文件了。
AC_OUTPUT([
Makefile
src/Makefile
layouts/Makefile
examples/Makefile
gb/Makefile
])
注:在configure.ac文件里有很多的宏,要自己手工添加;不同宏的含义还要学习一下。 - 在gb目录下增加一个Makefile.am文件,它是Makefile.in的源头,而Makefile.in又是Makefile文件的父文件。
Makefile.am的内容如下:
PREFIXDIR = $(prefix)
INCLUDES = -I../include $(GTK2_CFLAGS)
bbk_gb_test_CFLAGS = `pkg-config --cflags --libs gtk+-2.0`
noinst_PROGRAMS = bbk_gb_test
bbk_gb_test_SOURCES=bbk_gb_test.c gb_sc.c gb_en.c
bbk_gb_test_LDADD=$(GTK2_LIBS) ../lib/libgbe.a
变量bbk_gb_test_LDADD就是指定链接的静态库 - 执行项目里的autogen.sh脚本,就能在gb目录下生成Makefile文件了。
使用autoscan aclocallibtoolize autoheader automake autoconf等工具管理项目的一般方法
http://www.ibm.com/developerworks/cn/linux/l-makefile/
( 参考别人的 )
- 在目录下增加gb目录,用来存放自己的C文件;增加一个include目录用来存放头文件;增加一个lib目录用来存放第三方的静态库文件。
- 修改项目目录下的configure.ac文件内容,增加编译gb目录代码的编译开关
AC_ARG_ENABLE(gb,
[ --enable-gb Build gb-test ( requires GTK ) [default=no]],
enable_gb=$enableval,
enable_gb=no) - 在下面项里增加自己的子目录,就能在这个目录下生成Makefile文件了。
AC_OUTPUT([
Makefile
src/Makefile
layouts/Makefile
examples/Makefile
gb/Makefile
])
注:在configure.ac文件里有很多的宏,要自己手工添加;不同宏的含义还要学习一下。 - 在gb目录下增加一个Makefile.am文件,它是Makefile.in的源头,而Makefile.in又是Makefile文件的父文件。
Makefile.am的内容如下:
PREFIXDIR = $(prefix)
INCLUDES = -I../include $(GTK2_CFLAGS)
bbk_gb_test_CFLAGS = `pkg-config --cflags --libs gtk+-2.0`
noinst_PROGRAMS = bbk_gb_test
bbk_gb_test_SOURCES=bbk_gb_test.c gb_sc.c gb_en.c
bbk_gb_test_LDADD=$(GTK2_LIBS) ../lib/libgbe.a
变量bbk_gb_test_LDADD就是指定链接的静态库 - 执行项目里的autogen.sh脚本,就能在gb目录下生成Makefile文件了。
原文地址:http://blog.csdn.net/harrison_zhu/article/details/2127136