[1] 2 >>> MLD-5.x / Systems / Raspberry PI / {MLD 5.5 Unstable} Docker
 

Offline gr4vity

  • Expert Member
  • *****
  • Posts: 604
    • View Profile
{MLD 5.5 Unstable} Docker
« on: August 10, 2020, 22:13:35 »
Hello,

Because there is no guide for building MLD -5.5 in the wiki, i had to do it myself.
Now i noticed the following problem 

Code: [Select]
dpkg: warning: downgrading kernel:armhf-rpi2 from 5.7.9.202.76-202.79 to 5.7.9.202.76-202.76
I dunno how this happened but it's okay, i will build all the needed packages myself.

I build kernel i2c dvb packages so far.

I also need the names of the following packages as well

Code: [Select]

Load keymap: de-latin1
failed
Load preselected kernel modules:
modprobe: can't load module snd (kernel/sound/core/snd.ko): invalid module format
modprobe: can't load module brcmutil (kernel/drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil.ko): invalid module format
modprobe: can't load module uinput (kernel/drivers/input/misc/uinput.ko): invalid module format
failed
Starting udev Daemon
done
And any other needed packages which will conflict with the kernel i installed.

Best Regards.
« Last Edit: August 10, 2020, 23:42:24 by gr4vity »

Offline gr4vity

  • Expert Member
  • *****
  • Posts: 604
    • View Profile
{MLD 5.5 Unstable} Docker
« Reply #1 on: August 10, 2020, 23:44:58 »
I figured it out,
I need to build alsa and network-wireless-rpi3 packages
I see that uinput module is included
Is it to be used with VNC?
Do i have to build xorg package too?

« Last Edit: August 10, 2020, 23:47:27 by gr4vity »

Offline clausmuus

  • Administrator
  • Expert Member
  • ********
  • Posts: 20120
    • View Profile
    • ClausMuus.de
{MLD 5.5 Unstable} Docker
« Reply #2 on: August 11, 2020, 00:29:32 »
if you use the MLD development enviroment, you can call "make all_depends" in the kernel folder.
MLD 5.5 - Raspberry PI - 7" Touch TFT - Squeeze Play
MLD 5.5 - lirc yaUsbIR - OctopusNet - XFX GeForce 9300 mit Intel E3200 - 2GB RAM - 12TB HDD - Lian Li PC-C37B - Samsung LE40A559

Offline gr4vity

  • Expert Member
  • *****
  • Posts: 604
    • View Profile
{MLD 5.5 Unstable} Docker
« Reply #3 on: August 11, 2020, 00:37:32 »
Hi Claus,

make all_depends will build all MLD packages or it will fix the kernel version number?

Because i installed docker on the SD card and i don't have much space, i just need to build the necessary packages only.

I don't understand why the kernel version # looks like that 5.7.9.202.76-202.79?

That caused the problem i'm having.

I think 5.7.9.202.76 will be enough.

Best Regards.
« Last Edit: August 11, 2020, 02:11:06 by gr4vity »

Offline clausmuus

  • Administrator
  • Expert Member
  • ********
  • Posts: 20120
    • View Profile
    • ClausMuus.de
{MLD 5.5 Unstable} Docker
« Reply #4 on: August 11, 2020, 14:08:24 »
My kernel version is 76 and not 79 because I have made some changes without update the version.
A "make all_depends" in the kernel folder, build all "checked out" packages, that depends on the kernel.
MLD 5.5 - Raspberry PI - 7" Touch TFT - Squeeze Play
MLD 5.5 - lirc yaUsbIR - OctopusNet - XFX GeForce 9300 mit Intel E3200 - 2GB RAM - 12TB HDD - Lian Li PC-C37B - Samsung LE40A559

Offline gr4vity

  • Expert Member
  • *****
  • Posts: 604
    • View Profile
{MLD 5.5 Unstable} Docker
« Reply #5 on: August 11, 2020, 16:37:53 »
Hi Claus,

My kernel version is 76 as well but the kernel version i download from webif is 79 
Code: [Select]
kernel_5.7.9.202.76-202.79_armhf-rpi2
That's why i had to build all packages in the docker container.

Anyway, building MLD on the SD card is a pain specially if it's not class 10.  :o

Now, i want to build MLD for rpi on my PC.

I have an MLD x86 image already, is it possible to build an image for MLD rpi too?

What changes do i have to make?

Perhaps name it MLD-ARM?

Best Regards.
« Last Edit: August 11, 2020, 16:43:24 by gr4vity »

Offline clausmuus

  • Administrator
  • Expert Member
  • ********
  • Posts: 20120
    • View Profile
    • ClausMuus.de
{MLD 5.5 Unstable} Docker
« Reply #6 on: August 11, 2020, 17:40:30 »
You must use the ARM Dockerfile and add to the second line a command to copy a qemu lib to the /usr/lib folder (if I remember right).
With this, inside the docker runs a ARM system and build ARM packages.
MLD 5.5 - Raspberry PI - 7" Touch TFT - Squeeze Play
MLD 5.5 - lirc yaUsbIR - OctopusNet - XFX GeForce 9300 mit Intel E3200 - 2GB RAM - 12TB HDD - Lian Li PC-C37B - Samsung LE40A559

Offline gr4vity

  • Expert Member
  • *****
  • Posts: 604
    • View Profile
{MLD 5.5 Unstable} Docker
« Reply #7 on: August 11, 2020, 17:53:22 »
Oh, i think we discussed that before but it didn't work.
Only difference is i wanted to build MLD rpi image on MLD x86 system.
I just want to verify there won't be any conflict with the MLD x86 image.
I guess there are other changes that must be done specially image name ... right?

Best Regards.

Offline clausmuus

  • Administrator
  • Expert Member
  • ********
  • Posts: 20120
    • View Profile
    • ClausMuus.de
{MLD 5.5 Unstable} Docker
« Reply #8 on: August 11, 2020, 19:25:28 »
This are the first lines of our ARM Dockerfile:
Code: [Select]
FROM arm32v7/debian:buster-slim
MAINTAINER MLD Team <team@minidvblinux.de>
COPY qemu-arm-static /usr/bin
You must get the latest Version of the qemu-arm-static file from the internet and place it in the same folder as the Dockerfile.
With this you will build an ARM Docker image on a x86 system. Inside the docker container is a ARM system running.
MLD 5.5 - Raspberry PI - 7" Touch TFT - Squeeze Play
MLD 5.5 - lirc yaUsbIR - OctopusNet - XFX GeForce 9300 mit Intel E3200 - 2GB RAM - 12TB HDD - Lian Li PC-C37B - Samsung LE40A559

Offline gr4vity

  • Expert Member
  • *****
  • Posts: 604
    • View Profile
{MLD 5.5 Unstable} Docker
« Reply #9 on: August 11, 2020, 20:06:21 »
Hi Claus,

Yes, we already discussed that here.

https://www.minidvblinux.de/forum/index.php/topic,9732.0.html

I just have another question, I have MLD x86 image inside the docker container already,
I start it as usual
Code: [Select]
docker start MLDI think i should choose another name for MLD ARM image right?

Best Regards.

Offline clausmuus

  • Administrator
  • Expert Member
  • ********
  • Posts: 20120
    • View Profile
    • ClausMuus.de
{MLD 5.5 Unstable} Docker
« Reply #10 on: August 11, 2020, 23:40:12 »
Yes. every image and container must have an individial name.
MLD 5.5 - Raspberry PI - 7" Touch TFT - Squeeze Play
MLD 5.5 - lirc yaUsbIR - OctopusNet - XFX GeForce 9300 mit Intel E3200 - 2GB RAM - 12TB HDD - Lian Li PC-C37B - Samsung LE40A559

Offline gr4vity

  • Expert Member
  • *****
  • Posts: 604
    • View Profile
{MLD 5.5 Unstable} Docker
« Reply #11 on: August 12, 2020, 18:20:11 »
Hello Claus,

I have the same problem

Code: [Select]
Sending build context to Docker daemon  3.925MB
Step 1/7 : FROM arm32v7/debian:buster-slim
 ---> 7aa3de2a6786
Step 2/7 : MAINTAINER MLD Team <team@minidvblinux.de>
 ---> Using cache
 ---> 67861d1be101
Step 3/7 : COPY qemu-arm-static /usr/bin
 ---> a121670fe26e
Step 4/7 : ARG DEBIAN_FRONTEND=noninteractive
 ---> Running in 59aeddbc9a1c
Removing intermediate container 59aeddbc9a1c
 ---> 7d6c0227eb2f
Step 5/7 : RUN apt-get update  && apt-get dist-upgrade -y  && apt-get install -y     make git-core software-properties-common locales locales-all
 ---> Running in 1cbb400fdaae
standard_init_linux.go:211: exec user process caused "exec format error"
The command '/bin/sh -c apt-get update  && apt-get dist-upgrade -y  && apt-get install -y     make git-core software-properties-common locales locales-all' returned a non-zero code: 1

But this time i found the solution  ;)

The following step must be done in order to work.

Code: [Select]
docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
Unable to find image 'multiarch/qemu-user-static:latest' locally
latest: Pulling from multiarch/qemu-user-static
d9cbbca60e5f: Pull complete
c5351f770467: Pull complete
ed8a5179ae11: Pull complete
1ec39da9c97d: Pull complete
6cbaefe2d3dc: Pull complete
Digest: sha256:96c2efd64db20bc326788773f6fa7cecef71b9d2c3de4c7d95a9910f38295c42
Status: Downloaded newer image for multiarch/qemu-user-static:latest
Setting /usr/bin/qemu-alpha-static as binfmt interpreter for alpha
Setting /usr/bin/qemu-arm-static as binfmt interpreter for arm
Setting /usr/bin/qemu-armeb-static as binfmt interpreter for armeb
Setting /usr/bin/qemu-sparc-static as binfmt interpreter for sparc
Setting /usr/bin/qemu-sparc32plus-static as binfmt interpreter for sparc32plus
Setting /usr/bin/qemu-sparc64-static as binfmt interpreter for sparc64
Setting /usr/bin/qemu-ppc-static as binfmt interpreter for ppc
Setting /usr/bin/qemu-ppc64-static as binfmt interpreter for ppc64
Setting /usr/bin/qemu-ppc64le-static as binfmt interpreter for ppc64le
Setting /usr/bin/qemu-m68k-static as binfmt interpreter for m68k
Setting /usr/bin/qemu-mips-static as binfmt interpreter for mips
Setting /usr/bin/qemu-mipsel-static as binfmt interpreter for mipsel
Setting /usr/bin/qemu-mipsn32-static as binfmt interpreter for mipsn32
Setting /usr/bin/qemu-mipsn32el-static as binfmt interpreter for mipsn32el
Setting /usr/bin/qemu-mips64-static as binfmt interpreter for mips64
Setting /usr/bin/qemu-mips64el-static as binfmt interpreter for mips64el
Setting /usr/bin/qemu-sh4-static as binfmt interpreter for sh4
Setting /usr/bin/qemu-sh4eb-static as binfmt interpreter for sh4eb
Setting /usr/bin/qemu-s390x-static as binfmt interpreter for s390x
Setting /usr/bin/qemu-aarch64-static as binfmt interpreter for aarch64
Setting /usr/bin/qemu-aarch64_be-static as binfmt interpreter for aarch64_be
Setting /usr/bin/qemu-hppa-static as binfmt interpreter for hppa
Setting /usr/bin/qemu-riscv32-static as binfmt interpreter for riscv32
Setting /usr/bin/qemu-riscv64-static as binfmt interpreter for riscv64
Setting /usr/bin/qemu-xtensa-static as binfmt interpreter for xtensa
Setting /usr/bin/qemu-xtensaeb-static as binfmt interpreter for xtensaeb
Setting /usr/bin/qemu-microblaze-static as binfmt interpreter for microblaze
Setting /usr/bin/qemu-microblazeel-static as binfmt interpreter for microblazeel
Setting /usr/bin/qemu-or1k-static as binfmt interpreter for or1k

Now, MLD ARM container was created successfully but i have the following error when trying to run "make"

Code: [Select]
echo -e "\t\\033[1;33mThe package 'kernel' is disabled for this plattform\\033[0;39m"
The package 'kernel' is disabled for this plattform

Any idea?

Best Regards.

Offline clausmuus

  • Administrator
  • Expert Member
  • ********
  • Posts: 20120
    • View Profile
    • ClausMuus.de
{MLD 5.5 Unstable} Docker
« Reply #12 on: August 13, 2020, 00:04:37 »
Yes, you must select a destination platform where you want to build for. Add this line to your Makefile.config to enable a RPI2 and RPI3 Build:
Code: [Select]
DEST = rpi2
MLD 5.5 - Raspberry PI - 7" Touch TFT - Squeeze Play
MLD 5.5 - lirc yaUsbIR - OctopusNet - XFX GeForce 9300 mit Intel E3200 - 2GB RAM - 12TB HDD - Lian Li PC-C37B - Samsung LE40A559

Offline gr4vity

  • Expert Member
  • *****
  • Posts: 604
    • View Profile
{MLD 5.5 Unstable} Docker
« Reply #13 on: August 13, 2020, 16:08:22 »
Hello Claus,

It worked, thanks a lot  :)

By the way, i build dvb-mb package but some modules can load fine like stv090x some other modules failed to load like rc-core, dvb-usb
Why is that?

Best Regards.
« Last Edit: August 13, 2020, 17:33:47 by gr4vity »

Offline clausmuus

  • Administrator
  • Expert Member
  • ********
  • Posts: 20120
    • View Profile
    • ClausMuus.de
{MLD 5.5 Unstable} Docker
« Reply #14 on: August 14, 2020, 15:28:19 »
Maybe you have installed an other dvb Package, that already provide that modules.
MLD 5.5 - Raspberry PI - 7" Touch TFT - Squeeze Play
MLD 5.5 - lirc yaUsbIR - OctopusNet - XFX GeForce 9300 mit Intel E3200 - 2GB RAM - 12TB HDD - Lian Li PC-C37B - Samsung LE40A559

[1] 2 >>> MLD-5.x / Systems / Raspberry PI / {MLD 5.5 Unstable} Docker
 



Users Online Users Online

0 Members and 1 Guest are viewing this topic.