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
  atinout binaries for mobian/debian? NeutralGrey 4 1,311 10-31-2024, 04:16 AM
Last Post: astylethargic
  bookworm vs trixie discussion for mobian in pinephone regular. zetabeta 39 8,081 10-15-2024, 01:12 PM
Last Post: anonymous
  Mobian-Kicksecure? 3460p 0 804 05-26-2024, 02:09 PM
Last Post: 3460p
  Mobian repository status henrythemouse 16 11,961 04-10-2024, 10:02 AM
Last Post: diederik
  cant verify mobian image at website gnugpg penguins_rule 0 867 03-18-2024, 08:54 PM
Last Post: penguins_rule
  mobian installed to eMMC - how to install tow-boot grump_fiddle_reinstall 6 3,875 11-22-2023, 11:46 AM
Last Post: aLoop100o
  What actions needed to keep on mobian testing user641 3 2,562 09-05-2023, 06:44 AM
Last Post: Zebulon Walton
  Mobian boot failed with zstd message after upgrade. Mahgue 0 964 09-01-2023, 11:29 AM
Last Post: Mahgue
  how to update mobian over tor vusra 13 9,070 07-09-2023, 08:57 PM
Last Post: vusra
  opensnitch outbound firewall now works on mobian vusra 2 2,394 07-09-2023, 01:37 AM
Last Post: vusra

Forum Jump:


Users browsing this thread: 2 Guest(s)