Makefile用处很大,写法也很多,下面是我个人认为的 简单Makefile 好的写法:
CGR_FRAMEWORK_HOME=../../../../../../cgr_framework/d3gn5-puma5-cgr-2.3.4-t4.2539/framework/
PROJECT_HOME=../../../../../../projects/d3gn5/trunk
SDK_HOME=../../../../../../vendors/trunk/m5t_intel_VSDK_3.5.1.25/ /* 路径的命名*/
CC = /opt/toolchain3.5/usr/bin/armeb-unknown-linux-uclibcgnueabi-gcc /*交叉编译器*/
COPT = -O2 -Wall
CFLAGS = ${COPT}
CFLAGS += \ /* include 路径 -I* /
-I$(PROJECT_HOME)/includes/modules \
-I$(CGR_FRAMEWORK_HOME)/utilities/includes \
-I$(CGR_FRAMEWORK_HOME)/includes \
-I$(CGR_FRAMEWORK_HOME)gateway/utilities/includes \
-I$(PROJECT_HOME)/includes \
LDFLAGS = -L$(CGR_FRAMEWORK_HOME)/lib \ /* 动态库路径 及名字 -L 路径 -l动态库名 */
-L$(SDK_HOME)/ti/lib \
-lcgrutil \
-lcgrgwutil \
.PHONY clean wifibutton_ctrl
clean:
rm -f wifibutton_ctrl *.o *.a
wifibutton_ctrl: wifibutton_ctrl.c
$(CC) $(CFLAGS) $(LDFLAGS) $^ -o $@ /* 编译的语句 $^ 所依赖的文件, $@ 目标文件 */