separate docker build

This commit is contained in:
Ciro Santilli 六四事件 法轮功
2018-10-04 00:00:00 +00:00
parent 76b486c274
commit 2cf0277998
5 changed files with 143 additions and 8 deletions

View File

@@ -521,9 +521,9 @@ After this, to start using Docker again will you need another:
Tested on: a760cb1196161e913a94684e03cfeaebf71f0cdd
[[prebuilt]]
=== Prebuilt setup
=== Prebuilt Buildroot setup
==== About the prebuilt setup
==== About the prebuilt Buildroot setup
This setup uses prebuilt binaries of the <<qemu-buildroot-setup>> that we upload to GitHub from time to time.
@@ -556,7 +556,7 @@ run-detectors: unable to find an interpreter for
This setup might be good enough for those developing simulators, as that requires less image modification. But once again, if you are serious about this, why not just let your computer build the <<qemu-buildroot-setup,full featured setup>> while you take a coffee or a nap? :-)
==== Prebuilt setup getting started
==== Prebuilt Buildroot setup getting started
Some times it works with the host QEMU:
@@ -620,6 +620,41 @@ sudo apt-get install qemu-utils
The Linux kernel is required for `extract-vmlinux` to convert the compressed kernel image which QEMU understands into the raw vmlinux that gem5 understands: https://superuser.com/questions/298826/how-do-i-uncompress-vmlinuz-to-vmlinux
////
=== Ubuntu guest setup
==== About the Ubuntu guest setup
This setup is similar to <<prebuilt>>, but it instead downloads an Ubuntu image with Docker, and uses that as the root filesystem.
Advantages over Buildroot:
* saves build time
* you get to play with a huge selection of Debian packages out of the box
* more representative of most non-embedded production systems than BusyBox
Disadvantages:
* less visibility: https://askubuntu.com/questions/82302/how-to-compile-ubuntu-from-source-code The fact that that question has no answer makes me cringe
* less compatibility, e.g. no one knows what the officially supported cross compilers are: https://askubuntu.com/questions/1046294/what-are-the-officially-supported-cross-compilers-for-ubuntu-server-alternative
Docker is used here just as an image download provider since it has a wide variety of images. Why we don't just download the regular Ubuntu disk image:
* that image is not ready to boot, but rather goes into an interactive installer: https://askubuntu.com/questions/884534/how-to-run-ubuntu-16-04-desktop-on-qemu/1046792#1046792
* the default Ubuntu image has a large collection of software, and is large. The docker version is much more minimal.
One alternative would be to use link:https://wiki.ubuntu.com/Base[Ubuntu base] which can be downloaded from: http://cdimage.ubuntu.com/ubuntu-base That provides a `.tgz` and comes very close to what we obtain with Docker, but without the need for `sudo`.
==== Ubuntu guest setup getting started
TODO
....
sudo ./build-docker
./run --docker
....
`sudo` is required for Docker operations: https://askubuntu.com/questions/477551/how-can-i-use-docker-without-sudo
[[host]]
=== Host kernel module setup
@@ -9894,7 +9929,7 @@ collect2: error: ld returned 1 exit status
....
+
with the prebuilt toolchain, and I'm lazy to debug.
* there seems to to be no analogous `aarch64` Ubuntu package to `gcc-arm-none-eabi`
* there seems to to be no analogous `aarch64` Ubuntu package to `gcc-arm-none-eabi`: https://askubuntu.com/questions/1049249/is-there-a-package-with-the-aarch64-version-of-gcc-arm-none-eabi-for-bare-metal
=== C++ baremetal