CHANGE LOG: (1)Makefile.am 不是Makefile.in 。Makefile.am是手工指定需要编译的源文件,生成的目标程序,当然还有automake的选项的automake输入文件。
$tree ~/hello hello/ └── hello.cpp}}}
make #默认编译整个系统 make install #默认安装整个系统到... make clean #清理编译过程产生的临时文件. make dist #源代码打包}}}
$sudo apt-get install autoconf//有4m左右吧.
autoscan #产生configure.sacn==>.in aclocal #需要要configure.in autoconf autoheader automake #需要有Makefile.am automake --add-missing #同上
$./configure #生成makfile文件 $make $make install $make clean==开始==
1: $autoscan 2: 这个命令将生成configure.scan文件,将这个文件改成configure.in. 3: 修改configure.in文件. 4: 添加如下到configure.in中. {{{ AC_CONFIG_FILES([Makfile]) AM_INIT_AUTOMAKE(hello,1.0) }}} 5: $aclocal 6: $autoconf #生成configure可执行文件 7: $autoheader 8: 创建Makefile.am文件. 9: 向Makefile.am文件加入如下信息: {{{ AUTOMAKE_OPTIONS = foreign # bin_PROGRAMS = hello #指明最终生成的可执行文件 hello_SOURCES = hello.cpp #指明该最终的可执行文件由哪些源文件组成. }}} 10:$automake 或者 $automake --add-missing #生成Makefile.in文件. 到了这里就完成auto工具的使用啦.下面可以需要生成该系统的makfile文件就可以: 11:$./configure (如果检查成功的话就会生成makfile啦) 12:make #编译 13:make clean #清理临时编译文件. 14:make dist #对当前源代码打包(打包后的文件是有版本号的.这个版本号在configure.in中确定). 15:make install #安装当前系统的程序到默认目录(/usr/local/bin).[可以需要使用root权限来安装]