发新话题
打印

[汇编] 自动生成Makefile文件模板

自动生成Makefile文件模板

Step by Step

1, autoscan

2, move configure.scan to configure.ac, and vim configure.ac like this:

AM_INIT_AUTOMAKE(myprojectname , version)

AC_OUTPUT(Makefile  subdir/Makefile subdir1/Makefile)

AC_PROG_RANLIB

3, aclocal : a perl script

4, autoconf -fvi

5, make Makefile.am, as:

bin_PROGRAMS=myprogram
SUBDIRS=sub1

myprogram_SOURCES= \
a.cpp \
b.cpp

EXTRA_DIST= \
a.h \
b.h

myprogram_LDADD = libsub1.a

myprogram_LDFLAGS = -lpthread -lglib-2.0 -L/usr/bin $(all_libraries)

AM_CXXFLAGS = -D_LINUX

INCLUDES=-IPassport -Isub1/ -I/usr/include/glib-2.0 \
-I/usr/lib/glib-2.0/include $(all_includes)

6, autoheader declare config.h.in

7, automake --add-missing

8, ./configure

9, make

10, example:Download

you can run the script name of rmlocal, and try it .

author:cnangel
print pack( 'H*', '436e616e67656c');
http://renark.huhoo.net/crypt.cgi

TOP

好文章呀!一直都在找有关MAKEFILE和AUTOMAKE方面的资料,可是一直因为水平太低有些地方一直都不懂。今天终于看见了这份颇有价值的资料了,非常感谢cnangel的辛勤劳动。如果能把AUTOMAKE写的更详细一些就更好了。还有请问这几句:3, aclocal : a perl script

4, autoconf -fvi   是什么意思呀?楼主能不能给点注释呀
love you forever

TOP

aclocal是一个perl脚本  automatically generate aclocal.m4 from configure.in

autoconf

  -v, --verbose             verbosely report processing
  -f, --force               consider all files obsolete
  -i, --initialization  also trace Autoconf's initialization process
print pack( 'H*', '436e616e67656c');
http://renark.huhoo.net/crypt.cgi

TOP

非常感谢cnangel的精彩指教,我受益匪浅啊
love you forever

TOP

step by step,但還是看不懂,我想得好好學習一下才行
天地不仁,以萬物為芻狗。
聖人不仁,以百姓為芻狗。

TOP

好文,好东西

TOP

可是原创文章阿,精华哪去了?
print pack( 'H*', '436e616e67656c');
http://renark.huhoo.net/crypt.cgi

TOP

我都是习惯自己手写makefile,随着源文件的增加,makefile逐渐增加。

TOP

好主意
love you forever

TOP

发新话题