This shows you the differences between two versions of the page.
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 [2022/08/07 22:18] (current) ruby [Add User to a Docker Group] |
||
---|---|---|---|
Line 3: | Line 3: | ||
===== Introduction ===== | ===== Introduction ===== | ||
- | We provided | + | We provide |
- | You can follow the steps below to build the Ubuntu OS image. | + | You can follow the steps below: |
===== Preparation ===== | ===== Preparation ===== | ||
- | Install | + | Install |
- | ```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 | ||
Line 20: | Line 20: | ||
Clone the Fenix repository to somewhere, e.g. '' | Clone the Fenix repository to somewhere, e.g. '' | ||
- | ```sh | + | ```shell |
$ mkdir ~/project | $ mkdir ~/project | ||
$ cd ~/project/ | $ cd ~/project/ | ||
Line 30: | Line 30: | ||
You should setup the build environment first. \\ | You should setup the build environment first. \\ | ||
- | For example: '' | + | For example: '' |
- | ```sh | + | ```shell |
$ cd ~/ | $ cd ~/ | ||
$ source env/ | $ source env/ | ||
Line 43: | Line 43: | ||
<WRAP tip > | <WRAP tip > | ||
- | If this is your first time building | + | If it's the first time to build an image, the script will check your host's environment and install some essential packages. In addition, repositories (U-Boot, Linux) will be cloned automatically from the Khadas GitHub. |
</ | </ | ||
Line 51: | Line 51: | ||
==== Build U-Boot ==== | ==== Build U-Boot ==== | ||
- | ```sh | + | ```shell |
$ make uboot | $ make uboot | ||
``` | ``` | ||
Line 57: | Line 57: | ||
==== Build U-Boot Debian Package ==== | ==== Build U-Boot Debian Package ==== | ||
- | ```sh | + | ```shell |
$ make uboot-deb | $ make uboot-deb | ||
``` | ``` | ||
Line 63: | Line 63: | ||
==== Build Linux ==== | ==== Build Linux ==== | ||
- | ```sh | + | ```shell |
$ make kernel | $ make kernel | ||
``` | ``` | ||
Line 69: | Line 69: | ||
==== Build Linux Debian Package ==== | ==== Build Linux Debian Package ==== | ||
- | ```sh | + | ```shell |
$ make kernel-deb | $ make kernel-deb | ||
``` | ``` | ||
Line 75: | Line 75: | ||
==== Build GPU Debian Package ==== | ==== Build GPU Debian Package ==== | ||
- | ```sh | + | ```shell |
$ make gpu-deb | $ make gpu-deb | ||
``` | ``` | ||
Line 81: | Line 81: | ||
==== Build the Board Debian Package ==== | ==== Build the Board Debian Package ==== | ||
- | ```sh | + | ```shell |
$ make board-deb | $ make board-deb | ||
``` | ``` | ||
Line 87: | Line 87: | ||
==== Build all Debian Packages ==== | ==== Build all Debian Packages ==== | ||
- | ```sh | + | ```shell |
$ make debs | $ make debs | ||
``` | ``` | ||
Line 93: | Line 93: | ||
==== Build U-Boot Image ==== | ==== Build U-Boot Image ==== | ||
- | ```sh | + | ```shell |
$ make uboot-image | $ make uboot-image | ||
``` | ``` | ||
Line 99: | Line 99: | ||
==== Clean Linux Source Tree ==== | ==== Clean Linux Source Tree ==== | ||
- | ```sh | + | ```shell |
$ make kernel-clean | $ make kernel-clean | ||
``` | ``` | ||
Line 105: | Line 105: | ||
==== Show Linux Menuconfig ==== | ==== Show Linux Menuconfig ==== | ||
- | ```sh | + | ```shell |
$ make kernel-config | $ make kernel-config | ||
``` | ``` | ||
Line 111: | Line 111: | ||
==== Save Linux Defconfig ==== | ==== Save Linux Defconfig ==== | ||
- | ```sh | + | ```shell |
$ make kernel-saveconfig | $ make kernel-saveconfig | ||
``` | ``` | ||
Line 117: | Line 117: | ||
==== Clean U-Boot Source Tree ==== | ==== Clean U-Boot Source Tree ==== | ||
- | ```sh | + | ```shell |
$ make uboot-clean | $ make uboot-clean | ||
``` | ``` | ||
Line 125: | Line 125: | ||
You can get help messages by executing '' | You can get help messages by executing '' | ||
- | ```sh | + | ```shell |
$ make help | $ make help | ||
Fenix scripts help messages: | Fenix scripts help messages: | ||
Line 175: | Line 175: | ||
==== 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 | + | You need to logout or reboot the system to take effect. |
</ | </ | ||
Line 186: | Line 186: | ||
==== Check Docker ==== | ==== Check Docker ==== | ||
- | ```sh | + | ```shell |
$ docker run hello-world | $ docker run hello-world | ||
``` | ``` | ||
Line 225: | Line 225: | ||
Get Docker image: | Get Docker image: | ||
- | ``` | + | ```shell |
$ cd ~/ | $ cd ~/ | ||
$ docker pull numbqq/ | $ docker pull numbqq/ | ||
Line 232: | Line 232: | ||
Build image in Docker: | Build image in Docker: | ||
- | ```sh | + | ```shell |
$ docker run -it --name fenix -v $(pwd):/ | $ docker run -it --name fenix -v $(pwd):/ | ||
-v / | -v / | ||
Line 243: | Line 243: | ||
Start your build from inside the Docker container. | Start your build from inside the Docker container. | ||
- | ```sh | + | ```shell |
khadas@919cab43f66d: | khadas@919cab43f66d: | ||
khadas@919cab43f66d: | khadas@919cab43f66d: | ||
Line 250: | Line 250: | ||
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 | ||
``` | ``` |