???????Linux Makefile????
????Linux Makefile????????????????????????????к???????????????????????1???????????????????????е????????????±???Linux Makefile?м????????????????make??????????????????????±?????Щ?????
????Linux Makefile????????????????????????????????????????????Щ?????????Щ????????????????????????????????????????????????????±??????????顣
????Linux Makefile???????????????????????????????????дLinux Makefile??????????????д????????????????????д?? Makefile???????????????????????????????????????·????????仯??Linux Makefile????????????????????????????д Makefile?????????automake???????????????????Щ????
???????automake???????????????д?Щ?????????????????????autoconf????????????????configure???? automake??????????????????Makefile.in???????configure????Makefile.in?????????????????? Linux Makefile??????????????????Linux Makefile??automake?????????
????????Linux Makefile???????
??????????????????????Linux???а汾??Fedora Core release 1????????????????????autoconf??automake??
????????Linux Makefile??helloworld????
???????????????????????helloworld??????????????????????????????????????
????helloworld.c
????configure.in
????Makefile.am
?????????У?aclocal; autoconf; automake --add-missing; ./configure; make; ./helloworld ???????Makefile????????????????????helloworld.c??????????????????????????????????????????Makefile???о???????
???????????????????????
????1??????????????????????helloworld?????????????????helloworld????????????????/home/my/build?£?
????$ mkdir helloword
????$ cd helloworld
????2?? helloworld.c??????????????????д???hellowrold.c???????????vi helloworld.c?????????????????helloworld.c???????
????int main(int argc?? char** argv)
????{printf("Hello?? Linux World! ");
????return 0;}
?????????????????????helloworld?????????????????д??helloworld.c???
????3??????configure???????autoscan????????????????????μ?????????????configure.in??????????????
????$ autoscan
????$ ls
????configure.scan helloworld.c
??????к???hellowrold?????????????????configure.scan????????????????configure.in?????????????configure.scan?????configure.in????????????????????????????????????
????configure.in??????
????# -*- Autoconf -*-
????# Process this file with autoconf to produce a configure script.
????AC_INIT(helloworld.c)
????AM_INIT_AUTOMAKE(helloworld?? 1.0)
????# Checks for programs.
????AC_PROG_CC
????# Checks for libraries.
????# Checks for header files.
????# Checks for typedefs?? structures?? and compiler characteristics.
????# Checks for library functions.
????AC_OUTPUT(Makefile)
????configure.in???????
??????????????aclocal??autoconf?????????aclocal.m4??configure?????????
????$ aclocal
????$ls
????aclocal.m4 configure.in helloworld.c
????$ autoconf
????$ ls
????aclocal.m4 autom4te.cache configure configure.in helloworld.c