运行平台要求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里 |