arm-none-eabi-ar生成静态库

博客介绍了静态库生成模板,以52832为例,指出对于其他mcu平台,只需修改编译选项即可。

通过makefile生成静态库


当采用eclipse做开发工具时,需要.a库。

静态库生成模板

以52832为例,其它mcu平台,修改编译选项即可。

CC=arm-none-eabi-gcc
AR=arm-none-eabi-ar

vpath %.o out

CFLAGS += -MP
CFLAGS += -MD
CFLAGS += -DNRF52_PAN_58
CFLAGS += -DNRF52_PAN_54
CFLAGS += -DNRF52_PAN_31
CFLAGS += -DNRF52_PAN_51
CFLAGS += -D__HEAP_SIZE=0
CFLAGS += -DCONFIG_GPIO_AS_PINRESET
CFLAGS += -DBLE_STACK_SUPPORT_REQD
CFLAGS += -DNRF52_PAN_15
CFLAGS += -DNRF_SD_BLE_API_VERSION=3
CFLAGS += -DSWI_DISABLE0 -DNRF52_PAN_20
CFLAGS += -DNRF52_PAN_55
CFLAGS += -DS132
CFLAGS += -mcpu=cortex-m4
CFLAGS += -mthumb -mabi=aapcs
CFLAGS +=  -Wall -Werror -O3 -g3
CFLAGS += -mfloat-abi=hard -mfpu=fpv4-sp-d16
# keep every function in separate section, this allows linker to discard unused ones
CFLAGS += -ffunction-sections -fdata-sections -fno-strict-aliasing
CFLAGS += -fno-builtin --short-enums 

OUT_DIR=out
SRCS = tedacp.c

OBJS = $(SRCS:.c=.o)

.PHONY: tedacp_lib_v1.01.a

all: tedacp_lib_v1.01.a

%.o : %.c
	mkdir -p $(OUT_DIR)
	$(CC) $(CFLAGS) -c -o $(OUT_DIR)/$@ $^

tedacp_lib_v1.01.a: $(OBJS)
	$(AR) -r $(OUT_DIR)/$@ $(OUT_DIR)/*.o

clean:
	rm -rf $(OUT_DIR)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值