cross-rs / cross

“Zero setup” cross compilation and “cross testing” of Rust crates
Apache License 2.0
6.4k stars 359 forks source link

Building a custom `initrd` with the `linux-image.sh` script of the docker image fails on powerpc64 #1399

Closed gamma0987 closed 7 months ago

gamma0987 commented 7 months ago

Checklist

Describe your issue

I needed to run cross with CROSS_RUNNER=qemu-system with the powerpc64-linux-unknown-gnu target. I was missing the debug symbols for libc6 within the initrd image which are provided by the libc6-dbg package, so I adjusted the /linux-image.sh shell script within the docker image and ran it with /linux-image.sh powerpc64. However, I wasn't able to build an initrd with the provided linux-image.sh script which actually boots. Long story short:

There were some issues within this script which I finally fixed to be able to build a successfully booting /qemu/initrd.gz and /qemu/kernel.

Problems:

  1. Missing gpg key 8D69674688B6CB36 (Debian Ports Archive Automatic Signing Key (2024) <ftpmaster@ports-master.debian.org>)
  2. The binaries and busybox are installed into /usr/bin/ instead of /bin. /bin is used in the linux-image.sh script. I think this happens due to the usage of the ports debian mirror. The ports binaries were installed into /usr/bin.
  3. The kernel modules are installed into /usr/lib/modules instead of /lib/modules. /lib/modules is used in the linux-image.sh.
  4. The kernel modules are compressed with xz and end with *.ko.xz instead of *.ko

Unlike other targets powerpc64 uses a pretty recent kernel (linux-image-6.6.8-powerpc64) and I think 3. and 4. are related to that. None of these problems were particularly hard to fix. Are you interested in a pr with a fixed linux-image.sh script?

What target(s) are you cross-compiling for?

powerpc64-unknown-linux-gnu

Which operating system is the host (e.g computer cross is on) running?

What architecture is the host?

What container engine is cross using?

cross version

cross 0.2.5

Example

No response

Additional information / notes

No response

Emilgardis commented 7 months ago

Id be very interested in a pr with fixes to this!

gamma0987 commented 7 months ago

Ok :) I'm a little bit busy right now, but I'll start a pr the next days.