automake中Makefile.am和configure.ac的格式及编译过程

本文详细介绍了如何使用automake和autotool进行源码编译。首先在src目录编写Makefile.am,定义bin_PROGRAMS和AM_CFLAGS。接着通过ACLOCAL_AMFLAGS配置libtoolize。执行libtoolize、aclocal、autoconf和automake生成configure及相关文件。最后通过./configure和make安装可执行文件到./bin/。
摘要由CSDN通过智能技术生成

(一)写Makefile.am

当写完代码之后,在代码所在的目录src中,编写Makefile.am文件,其内容如下:

bin_PROGRAMS = ap_collector ap_server
#Add extra debug info for gdb
AM_CFLAGS = -ggdb
ACLOCAL_AMFLAGS = -I m4
# libnfdump sources
ipmap = ip_map.c ip_map.h
getregion = get_region.c get_region.h
pbkafka = pb_kafka.c pb_kafka.h
protobuf = proto/sflow.pb-c.c proto/sflow.pb-c.h
filelist = file_list.c file_list.h
redisclient = redis_client.c redis_client.h
parsefile = parse_file.c parse_file.h
getconfig = parse_config.c parse_config.h

ap_collector_SOURCES = $(ipmap) $(getregion) $(filelist) $(parsefile) $(redisclient) $(getconfig)
ap_collector_LDADD = -lhiredis -lmysqlclient

ap_server_SOURCES = region_aggr.c $(ipmap) $(pbkafka) $(protobuf) $(getconfig)
ap_server_LDADD = -lhiredis -lrdkafka -lprotobuf-c

其中,bin_PROGRAMS为要生成的可执行文件名,可以为多个。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值