Khadas Docs

Amazing Khadas, always amazes you!

User Tools

Site Tools


products:sbc:common:development:build-ubuntu

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
products:sbc:common:development:build-ubuntu [2022/07/05 23:40]
hyphop [Build Options]
products:sbc:common:development:build-ubuntu [2026/05/11 02:13] (current)
nick
Line 3: Line 3:
 ===== Introduction ===== ===== Introduction =====
  
-We provided [[kg>fenix|Fenix]] for you to build the Ubuntu OS images easily. \\ +We provide [[kg>fenix|Fenix]] to help you build Ubuntu OS images easily. \\ 
-You can follow the steps below to build the Ubuntu OS image.+You can follow the steps below.
  
  
 ===== Preparation ===== ===== Preparation =====
  
-Install ecessial dependencies.+Install essential dependencies.
  
-```sh+```shell
 $ sudo apt update $ sudo apt update
 $ sudo apt install git make lsb-release qemu-user-static $ sudo apt install git make lsb-release qemu-user-static
 ``` ```
  
-===== Get Fenix Source Code =====+===== Get Fenix source code =====
  
-Clone the Fenix repository to somewhere, e.g. ''~/project''+Clone the Fenix repository to a directory, e.g.''~/project''.
  
-```sh+```shell
 $ mkdir ~/project $ mkdir ~/project
 $ cd ~/project/ $ cd ~/project/
Line 26: Line 26:
 ``` ```
  
-===== Setup the Build Environment =====+===== Setup the build environment =====
  
-You should setup the build environment first. \\+You must set up the build environment first. \\
  
-For example: ''Board type'', ''Linux version'', ''distribution'', etc.+For example: ''Board type'', ''Linux version'', ''distribution''.
  
-```sh+```shell
 $ cd ~/project/fenix $ cd ~/project/fenix
 $ source env/setenv.sh $ source env/setenv.sh
 ``` ```
  
-===== Build the OS Image =====+===== Build the OS image =====
  
-Just type ''make'' to start build.+Simply type ''make'' to start the build.
  
- +<WRAP tip >  
-<WRAP tip > +If this is your first time building an image, the script will check your host environment and install essential packages. Additionally, repositories (such as U-Boot and Linux) will be automatically cloned from the Khadas GitHub. 
-If this is your first time building an image, the script will check your host'environment and install some essential packages. In addition, repositories (U-BootLinux) will be cloned automatically from the Khadas GitHub.+
 </WRAP> </WRAP>
  
-===== Other Build Commands =====+===== Other build commands =====
  
  
 ==== Build U-Boot ==== ==== Build U-Boot ====
  
-```sh+```shell
 $ make uboot $ make uboot
 ``` ```
  
-==== Build U-Boot Debian Package ====+==== Build U-Boot Debian package ====
  
-```sh+```shell
 $ make uboot-deb $ make uboot-deb
 ``` ```
Line 63: Line 62:
 ==== Build Linux ==== ==== Build Linux ====
  
-```sh+```shell
 $ make kernel $ make kernel
 ``` ```
  
-==== Build Linux Debian Package ====+==== Build Linux Debian package ====
  
-```sh+```shell
 $ make kernel-deb $ make kernel-deb
 ``` ```
  
-==== Build GPU Debian Package ====+==== Build GPU Debian package ====
  
-```sh+```shell
 $ make gpu-deb $ make gpu-deb
 ``` ```
  
-==== Build the Board Debian Package ====+==== Build the board Debian package ====
  
-```sh+```shell
 $ make board-deb $ make board-deb
 ``` ```
  
-==== Build all Debian Packages ====+==== Build all Debian packages ====
  
-```sh+```shell
 $ make debs $ make debs
 ``` ```
  
-==== Build U-Boot Image ====+==== Build U-Boot image ====
  
-```sh+```shell
 $ make uboot-image $ make uboot-image
 ``` ```
  
-==== Clean Linux Source Tree ====+==== Clean Linux source tree ====
  
-```sh+```shell
 $ make kernel-clean $ make kernel-clean
 ``` ```
  
-==== Show Linux Menuconfig ====+==== Show Linux menuconfig ====
  
-```sh+```shell
 $ make kernel-config $ make kernel-config
 ``` ```
  
-==== Save Linux Defconfig ====+==== Save Linux defconfig ====
  
-```sh+```shell
 $ make kernel-saveconfig $ make kernel-saveconfig
 ``` ```
  
-==== Clean U-Boot Source Tree ====+==== Clean U-Boot source tree ====
  
-```sh+```shell
 $ make uboot-clean $ make uboot-clean
 ``` ```
  
-==== Help Messages ====+==== Help messages ====
  
 You can get help messages by executing ''make help'': You can get help messages by executing ''make help'':
  
-```sh+```shell
 $ make help $ make help
 Fenix scripts help messages: Fenix scripts help messages:
Line 149: Line 148:
 ``` ```
  
-==== Build Options ====+==== Build options ====
  
 Options for building: Options for building:
  
   * ''NO_CCACHE'' - ccache option   * ''NO_CCACHE'' - ccache option
-    * ''NO_CCACHE=no make'' - Enable ccache **default** +    * ''NO_CCACHE=no make'' - Enable ccache **(default)** 
     * ''NO_CCACHE=yes make'' - Disable ccache      * ''NO_CCACHE=yes make'' - Disable ccache 
  
   * ''COMPRESS_IMAGE'' - compress build image option   * ''COMPRESS_IMAGE'' - compress build image option
-    * ''COMPRESS_IMAGE=no make'' - Don't compress **default**+    * ''COMPRESS_IMAGE=no make'' - Don't compress **(default)**
     * ''COMPRESS_IMAGE=yes make'' - Compress image with xz     * ''COMPRESS_IMAGE=yes make'' - Compress image with xz
  
Line 173: Line 172:
 Please refer to [[https://docs.docker.com/engine/install/|Docker Documentation]]. Please refer to [[https://docs.docker.com/engine/install/|Docker Documentation]].
  
-==== Add User to a Docker Group ====+==== Add user to a Docker group ====
  
-```sh+```shell
 $ sudo usermod -aG docker $USER $ sudo usermod -aG docker $USER
 ``` ```
  
 <WRAP important > <WRAP important >
-You need to logout or reboot the system for changes to take effect.+You must log out or reboot the system for this change to take effect. 
 </WRAP> </WRAP>
  
Line 186: Line 185:
 ==== Check Docker ==== ==== Check Docker ====
  
-```sh+```shell
 $ docker run hello-world $ docker run hello-world
 ``` ```
  
-If you see the following print-out, Docker has installed successfully:+If you see the following output, Docker has been installed successfully:
  
 ```txt ```txt
Line 223: Line 222:
 ==== Build Fenix in Docker ==== ==== Build Fenix in Docker ====
  
-Get Docker image:+Pull the Docker image:
  
-```+```shell
 $ cd ~/project/fenix $ cd ~/project/fenix
 $ docker pull numbqq/fenix:latest $ docker pull numbqq/fenix:latest
 ``` ```
  
-Build image in Docker:+Build the image in Docker:
  
-```sh+```shell
 $ docker run -it --name fenix -v $(pwd):/home/khadas/fenix \ $ docker run -it --name fenix -v $(pwd):/home/khadas/fenix \
              -v /etc/localtime:/etc/localtime:ro \              -v /etc/localtime:/etc/localtime:ro \
Line 241: Line 240:
              numbqq/fenix              numbqq/fenix
 ``` ```
-Start your build from inside the Docker container.+Start your build from inside the Docker container:
  
-```sh+```shell
 khadas@919cab43f66d:~/fenix$ source env/setenv.sh khadas@919cab43f66d:~/fenix$ source env/setenv.sh
 khadas@919cab43f66d:~/fenix$ make khadas@919cab43f66d:~/fenix$ make
 ``` ```
  
-Restart the Docker container.+Restart the Docker container:
  
-```sh+```shell
 $ docker start fenix $ docker start fenix
 $ docker exec -ti fenix bash $ docker exec -ti fenix bash
 ``` ```
Last modified: 2022/07/05 23:40 by hyphop