Cross compilation for Mobian
#1
As a heavy emacs user and early adopter of both the pinephone and the keyboard cover that I've ordered as soon as it was made available, I'd really like to get a build of the latest emacs tree (with PGTK and nativecomp patches, which should really help with both performance and mobile compatibility) going, especially with the keyboard on its way.

I have extensive experience with building emacs itself, both with and without the patches, for amd64. I have no idea how to setup a cross compiler toolchain to build a arm64 package for the pinephone on my amd64 server, though, especially with the gcc toolchain which is supposedly harder to setup for cross compilation.

I'm also looking to setup the whole thing as a repo with a weekly or daily build job, if the repo setup doesn't require too much maintenance, which I'd gladly share if anyone's interested.

Does anyone have any pointers?
  Reply
#2
(01-05-2022, 08:33 AM)nicolapcweek94 Wrote: As a heavy emacs user and early adopter of both the pinephone and the keyboard cover that I've ordered as soon as it was made available, I'd really like to get a build of the latest emacs tree (with PGTK and nativecomp patches, which should really help with both performance and mobile compatibility) going, especially with the keyboard on its way.

I have extensive experience with building emacs itself, both with and without the patches, for amd64. I have no idea how to setup a cross compiler toolchain to build a arm64 package for the pinephone on my amd64 server, though, especially with the gcc toolchain which is supposedly harder to setup for cross compilation.

I'm also looking to setup the whole thing as a repo with a weekly or daily build job, if the repo setup doesn't require too much maintenance, which I'd gladly share if anyone's interested.

Does anyone have any pointers?

Among others:

https://jensd.be/1126/linux/cross-compil...-or-ubuntu
  Reply
#3
Thumbs Up 
Hey, nicolapcweek94 Smile

I was able to build the latest GNU Emacs directly on the PinePhone's CPU, including the pure GTK and native elisp compilation features. I had to limit the build to two parallel jobs (more than 2 caused OOM crashes). It took ~2h:36m, CPU utilization was around 50% and the temperatures stabilized at constant 60°C on the CPU and 56°C on the GPU.

After this experience, I have become interested in cross-compilation as well, although I have very little experience with it.

Quote:I'm also looking to setup the whole thing as a repo with a weekly or daily build job, if the repo setup doesn't require too much maintenance, which I'd gladly share if anyone's interested.

Not me. I track the Emacs source code commit-by-commit; I'd never give up this control for any amount of convenience.

However, if you have it already figured out, please do share your method and observations.  Heart
  Reply
#4
(02-20-2022, 05:48 AM)pda64 Wrote: Hey, nicolapcweek94 Smile

I was able to build the latest GNU Emacs directly on the PinePhone's CPU, including the pure GTK and native elisp compilation features. I had to limit the build to two parallel jobs (more than 2 caused OOM crashes). It took ~2h:36m, CPU utilization was around 50% and the temperatures stabilized at constant 60°C on the CPU and 56°C on the GPU.

After this experience, I have become interested in cross-compilation as well, although I have very little experience with it.

Quote:I'm also looking to setup the whole thing as a repo with a weekly or daily build job, if the repo setup doesn't require too much maintenance, which I'd gladly share if anyone's interested.

Not me. I track the Emacs source code commit-by-commit; I'd never give up this control for any amount of convenience.

However, if you have it already figured out, please do share your method and observations.  Heart

My current solution has been to build Emacs on a Debian chroot (via debootstrap) on my Raspberry Pi 4, which has significantly shorter build times (with the same pgtk and nativecomp features). I'm currently working on a cross compilation pipeline from my much more powerful server, but I'm blocked by the fact that I might have broken my wifi with the keyboard cover, so I can't really test it. I'll update the thread when I have something working and testable!
  Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  bookworm vs trixie discussion for mobian in pinephone regular. zetabeta 44 11,369 02-13-2025, 01:47 PM
Last Post: anonymous
  mobian phosh on screen keyboard not popping up for Chromium/Electron apps grump_fiddle_reinstall 1 261 01-15-2025, 08:08 PM
Last Post: Kevin Kofler
  How to use QR codes on Mobian Sid(unstable) Pinephone Pro biketool 1 286 01-02-2025, 12:47 PM
Last Post: zetabeta
  Upgrade to Mobian (Trixie) Staging biketool 13 1,376 12-29-2024, 10:35 AM
Last Post: biketool
  Mobian Bulleyes aberrio 0 300 12-16-2024, 08:27 AM
Last Post: aberrio
  Mobian, Suspend, and Audio Playback biketool 0 348 12-11-2024, 12:56 AM
Last Post: biketool
  how to update mobian over tor vusra 14 10,212 12-04-2024, 07:01 PM
Last Post: vusra
  atinout binaries for mobian/debian? NeutralGrey 4 1,856 10-31-2024, 04:16 AM
Last Post: astylethargic
  Mobian-Kicksecure? 3460p 0 1,114 05-26-2024, 02:09 PM
Last Post: 3460p
  Mobian repository status henrythemouse 16 13,319 04-10-2024, 10:02 AM
Last Post: diederik

Forum Jump:


Users browsing this thread: 1 Guest(s)