从零开始构建自己的ARM Ubuntu系统

  • Post author:
  • Post category:其他


这篇文章介绍如何构建一个完整基于ARM的Ubuntu系统。

由于改文章当初写的时候是发表在国外产品论坛上面,故保留了

原文内容

使用到的硬件平台:

Geekbox

补充说明:

虽然Geekbox是基于8核64Bits Cortex-A53 ARMV8架构的CPU,该方法构建的时候采用了向下兼容的32Bits的ARMV7架构。因此,该方法适用于Cortex-A7/A9/A15/A17/A12架构的ARM处理器。

In this guide, we will describe how to build an ubuntu system for Geekbox from scratch.

Different ways to achieve it:

1. Build the whole system in host PC with Chroot(emulator)

Link: TBD

2. Build in a removable media device, such as: SDCard or UDisk

Link: TBD

3. Build in the target device directly

Link: current article


Before starting


Carry on the following questions before you start your work:

1. Q: armhf vs arm64

A: Google for the answer

2. Q: Ubuntu vs Lubuntu/Kubuntu

A: Google for the answer

3. Q: What is included in an ubuntu system?

A: Bootloader & ramfs(kernel + initrd) & rootfs

4. Q: how to manage your ubuntu projects

A: Continue current reading and think about your own manage mothod.


Preparations

1. Create the working directories

$ install -d ~/project/geekbox/ubuntu/{linux,initrd,rootfs,prebuilts,archives/{ubuntu-core,debs,hwpacks},images,utils,scripts}
$ cd ~/project/geekbox/ubuntu

2. Download the bootloader source code

$ git clone https://github.com/geekboxzone/lollipop_u-boot u-boot

3. Download the linux kernel source code

$ git clone https://github.com/geekboxzone/lollipop_kernel -b ubuntu linux

4. Download the toolchain

$ git clone https://github.com/geekboxzone/lollipop_prebuilts_gcc_linux-x86_aarch64_aarch64-linux-android-4.9.git prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/

Note the full path of “prebuilts/gcc/linux-x86/arm/arm-eabi-4.6”, just to keep Makefile@linux happy

5. Download the initrd

$ git clone https://github.com/gouwa/initrd.git initrd

6. Download the hardware packages for Geekbox

$ git clone https://github.com/geekboxzone/ubuntu_h



版权声明:本文为igouwa原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。