目录
一、编译Zeta Linux SDK
在安装好软件包的64位Ubuntu 16.04系统里下载好代码以后,执行以下命令,导入SDK所需的临时环境设置。
$ cd zeta_linux
$ source build/envsetup.sh
这个过程需要选择SOC平台,V3/S3或V3s/S3L,选择好之后回车确认结束。这个步骤仅作用于当前终端,也就是说,当关闭当前终端窗口,再次新建终端窗口后,需要编译Zeta Linux或使用Zeta Linux编译环境的,需要再次执行上述步骤中的命令。
接着,执行下述命令,进行完整的SDK构建,最终生成可用于烧录的系统固件。
$ zmake all
二、zmake工具简介
zmake是Zeta Linux的make工具,可实现编译模块,编译内核,编译bootloader,制作rootfs镜像,制作系统固件等功能。如下:
##############################################
编译app下demo_recorder应用程序
$ zmake app/demo_recorder/zeta.in
或
$ zmake app/demo_recorder
##############################################
清除demo_recorder程序
$ zmake clean app/demo_recorder/zeta.in
或
$ zmake clean app/demo_recorder
##############################################
编译Linux内核
$ zmake kernel
##############################################
编译bootloader
$ zmake uboot
##############################################
打包rootfs文件系统镜像
$ zmake rootfs
##############################################
打包固件
$ zmake image
##############################################
完整构建SDK
$ zmake all
##############################################
三、zeta.in简介
zeta.in是应用于zmake工具的makefile文件,正如makefile于make一样。zeta.in的编写规则基本与Android.mk一致,参考:
TARGET_PATH := $(call my-dir)
include $(ENV_CLEAR)
# 填写c或c++源码文件
TARGET_SRC :=
# 填写头文件或头文件目录
TARGET_INc :=
# 填写要引入的动态库
TARGET_SHARED_LIB +=
#TARGET_LDFLAGS +=
#TARGET_ASFLAGS +=
#TARGET_CFLAGS +=
#TARGET_CPPFLAGS +=
# 填写目标名称
TARGET_MODULE :=
# 填写目标类型BUILD_BIN / BUILD_SHARED_LIB / BUILD_STATIC_LIB
include $(BUILD_BIN)
在实际开发过程中,zeta.in可省略掉一些makefile中繁琐的规则的编写,有利于开发者将更多的精力和注意力放在程序代码的开发上。