编写了一个Linux下发送udp数据包的程序,现要创建Makefile文件,方便以后安装,以下为我的安装过程记录。程序代码就不公布了,保密。
。。。。。此处省略代码一万行。。。。。
1.生成configure.in
命令:autoscan
结果得到configure.scan文件,将该文件名改为configure.in。修改configure.in部分内容如下
AC_PREREQ([2.63])
AC_INIT(sms, 2.4.5,[BUG-REPORT-ADDRESS])
AM_INIT_AUTOMAKE(sms, 2.4.5)
AC_CONFIG_SRCDIR([sms.c])
AC_CONFIG_HEADERS([config.h])
。。。。。。
2.命令 aclocal
3.命令 autoconf
4.新建文件Makefile.am,编辑文件内容
AUTOMAKE_OPTIONS= foreign
bin_PROGRAMS= sms
sms_SOURCES= util.c mdbpool.c proc.c sms.c
CFLAGS= -L /usr/include/mysql -lmysqlclient -D_GNU_SOURCE -g
5.命令automake –add-missing
configure.in: installing ‘./install-sh’
configure.in: installing ‘./missing’
automake: no `Makefile.am’ found for any configure output
automake: Did you forget AC_CONFIG_FILES([Makefile]) in configure.in?
碰到这情况,我们要修改下configure.in文件,最后一行AC_OUTPUT前面增加一行:
再执行一次automake
configure.in:8: required file `config.h.in’ not found
Makefile.am: installing `./depcomp’
还缺少个文件 config.h.in,这时我们执行命令autoheader
config.h.in文件生成好了,我们再重新执行一次autoconf和automake
6.接下来就是Linux下经典的三步安装了:./configure & make & make install