1、指定编译器,如海思平台:CROSS_COMPILE=arm-hisiv100nptl-linux-;
2、指定编译工具:GCC=$(CROSS_COMPILE)gcc CC=$(CROSS_COMPILE)g++;
3、使用 export 导出 子makefile 要用的变量;
4、定义变量的形式 指定 工程源文件 需要使用到的 “宏”,在后面的 LDFLAGS 里面使用 -D将其 定义成源文件能使用的宏;
5、用变量指定 所需文件路径;使用 简单扩展变量 风格,如FOO ?= bar(等价于ifeq ($(origin FOO), undefined) FOO = bar endif);
6、指定 所需 源文件 路径名;*.c/*.cpp *.h
7、指定 库 路径名;---此库一定要 在可执行文件运行的平台 指定 库 路径,否则 可执行程序 会提示找不到库,导致执行失败;
8、使用 LDFLAGS 变量 指定 要 定义的 宏 和 要链接的 库
9、编写make指令,生成 可执行文件 或 库;
10、对 生成的 可执行文件做一些 特殊的处理,如 压缩(tar + gzip)、去调试(--strip)、复制到指定路径等。