当前位置: 技术问答>linux和unix
关于makefile的问题,想在编译的时候生成一个.c文件。
来源: 互联网 发布时间:2016-06-25
本文导语: 我想在编译程序的时候,首先生成一个.c文件, 我在现有的makefile文件中加了以下内容。 @echo char* build_date_time(void) >> $(strip $(STB_DMB_T))/verno.c @echo { >> $(strip $(STB_DMB_T))/verno.c @echo static char build_date_time_str[...
我想在编译程序的时候,首先生成一个.c文件,
我在现有的makefile文件中加了以下内容。
@echo char* build_date_time(void) >> $(strip $(STB_DMB_T))/verno.c
@echo { >> $(strip $(STB_DMB_T))/verno.c
@echo static char build_date_time_str[] = "$(strip $(BUILD_DATE_TIME))"; >> $(strip $(STB_DMB_T))/verno.c
@echo return build_date_time_str; >> $(strip $(STB_DMB_T))/verno.c
@echo } >> $(strip $(STB_DMB_T))/verno.c
@echo #define VERNO_STR "$(strip $(VERNO))" > $(strip $(STB_DMB_T))/verno.h
但是一直显示commadns commence before first target. stop 错误
我在现有的makefile文件中加了以下内容。
@echo char* build_date_time(void) >> $(strip $(STB_DMB_T))/verno.c
@echo { >> $(strip $(STB_DMB_T))/verno.c
@echo static char build_date_time_str[] = "$(strip $(BUILD_DATE_TIME))"; >> $(strip $(STB_DMB_T))/verno.c
@echo return build_date_time_str; >> $(strip $(STB_DMB_T))/verno.c
@echo } >> $(strip $(STB_DMB_T))/verno.c
@echo #define VERNO_STR "$(strip $(VERNO))" > $(strip $(STB_DMB_T))/verno.h
但是一直显示commadns commence before first target. stop 错误
|
所有的命令都必需依附于某个目标吧,哪怕是虚拟的目标也行。
这样试试:
这样试试:
$(strip $(STB_DMB_T))/verno.c:
@echo char* build_date_time(void) >> $(strip $(STB_DMB_T))/verno.c
@echo { >> $(strip $(STB_DMB_T))/verno.c
@echo static char build_date_time_str[] = "$(strip $(BUILD_DATE_TIME))"; >> $(strip $(STB_DMB_T))/verno.c
@echo return build_date_time_str; >> $(strip $(STB_DMB_T))/verno.c
@echo } >> $(strip $(STB_DMB_T))/verno.c
@echo #define VERNO_STR "$(strip $(VERNO))" > $(strip $(STB_DMB_T))/verno.h