﻿运行平台要求x86_64 Linux，建议ubuntu 12.04、ubuntu 14.04、ubuntu 16.04，其他Linux平台未测试，理论上其他64位Linux环境也可以。
本编译环境无需安装，解压即可使用。

如果不使用本编译框架，直接使用编译链，参考ap/build/build.sh里CC、AR等定义，CFLAGS和LDFLAGS等建议参数定义在ap/build/base.mk。
如果软件交叉编译configure需要指定--host和--target，可以配置成--host=arm-linux --target=arm-linux，参见ap/build/base.mk。

如果使用本编译环境编译框架，以prj_mdl为例，只能在project/CHIP_NAME/prj_mdl/build目录运行make命令。
1、完整编译：make all, 注意本编译链只有normal版本,make normal等同make all。make help可以获得更多信息。

2、增量编译命令
   normal版本编译：make normal，编译完成打包的文件系统映像ap_userdata.img在project/CHIP_NAME/prj_mdl/bin目录
   如果编译报错，代码修改后增量编译：make normal2

3、normal版本下，修改了lib代码，make lib app normal_rootfs normal_copybin，或者可以用make normal2
   ap_userdata.img为根文件系统,在project/CHIP_NAME/prj_mdl/bin目录
   如果app用了lib的静态库，app的Makefile发现不了依赖，所以最好make appclean一下
   
   只解决库编译错误，可以make zte_lib=libdemo lib方式，这样只编译libdemo应用
   make zte_lib=libdemo libclean只清空libdemo的编译

4、normal版本下，修改了app代码，make app normal_rootfs normal_copybin，或者可以用make normal2
   ap_userdata.img为根文件系统,在project/CHIP_NAME/prj_mdl/bin目录
   
   只解决应用编译错误，可以make zte_app=appdemo app方式，这样只编译appdemo应用
   make zte_app=appdemo appclean只清空appdemo应用的编译

5、增加应用和库编译
应用和库的Makefile要包含COMMON_BASE_MK或COMMON_MK，参看app和lib目录的demo实例。
COMMON_MK比COMMON_BASE_MK多了一些宏定义，如果不需要,包含COMMON_BASE_MK即可。
5.1 经过configure生成Makefile的开源应用和库建议包含COMMON_BASE_MK，因为某些开源应用如果CFLAGS里包含宏定义会导致configure失败。
5.2 增加应用编译，应用名称增加到ap/app/config_app.mk里
5.3 增加库编译，库名称增加到ap/lib/config_lib.mk里
