Linux开发环境搭建/编译/打包

来自弘迪在线
Hdadmin讨论 | 贡献2021年12月25日 (六) 11:02的版本
跳转至: 导航搜索

编译环境搭建

安装Ubuntu操作系统

  • 同Android部分

安装所需组件

  • 同Android部分

编译步骤

解压源代码

mkdir HDA64_Linux

tar xvf HDA64_Linux.tar.gz -C HDA64_Linux/

源码结构

SPL(底层引导代码):lichee/brandy

U-Boot:lichee/brandy/uboot-xxxx.xx

Linux内核:lichee/linux-3.x

系统配置(env.txt和fex文件等):lichee/tools/pack/chips/sunxiwxpx/config

编译U-Boot

默认无需编译。若要修改U-Boot,编译方法同Android部分。

编译内核

直接执行下列命令:

$ ./build.sh

定制rootfs并打包固件

打包好的固件位于lichee/tools/pack下面。

常见问题

A:Android 6.0部分make时遇到“unsupported reloc 42 (43) against global symbol art::Runtime::instance_”错误

Q:问题的原因在于AOSP中的预编译好的ld程序存在bug,我们使用Ubuntu系统默认的ld来替换它。具体步骤如下:

将aosp中的ld改名:

$ cd prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.15-4.8/x86_64-linux/bin

$ mv ld ld.old

使用soft link,链接到全局ld:

$ ln -s /usr/bin/ld.gold ld