Any Interest in aarch64 Linux Builds?
Moderator: athenian200
-
- Lunatic
- Posts: 488
- Joined: 2022-03-23, 16:41
- Location: Chamber of Secrets
Any Interest in aarch64 Linux Builds?
Is there any interest in aarch64 Linux builds? My laptop is aarch64 based and I'm building each release locally for myself since there aren't official aarch64 binaries. I'd be happy to share the builds if someone wants them.
-
- Board Warrior
- Posts: 1325
- Joined: 2019-04-24, 09:38
Re: Any Interest in aarch64 Linux Builds?
Will they run on the raspberry Pi?
The profile picture shows my Maico EC30 E ceiling fan.
-
- Lunatic
- Posts: 488
- Joined: 2022-03-23, 16:41
- Location: Chamber of Secrets
Re: Any Interest in aarch64 Linux Builds?
I'm not sure, I don't have one to test. I'd think so since I'm not compiling with any compiler specific optimizations. The builds would require a very recent glibc version though since my hardware (ThinkPad X13s) is only supported on more bleeding edge Linux distros at the moment.
-
- Board Warrior
- Posts: 1325
- Joined: 2019-04-24, 09:38
Re: Any Interest in aarch64 Linux Builds?
I can test them on RPi 3+ and 4.
The profile picture shows my Maico EC30 E ceiling fan.
-
- Lunatic
- Posts: 344
- Joined: 2019-01-10, 09:37
- Location: Slovenia
Re: Any Interest in aarch64 Linux Builds?
I have a Raspberry Pi 5. Right now, I'm only the regular user of Pale Moon though (and the older version of Interlink).
So I'd be interested to try out Pale Moon on the Pi sometime in the future. Unless there are published builds that I'm not aware of, should Linux instructions for building on Linux just work, at least in theory? I have the latest arm64 flavor of Raspberry Pi OS, which is based on Debian.
So I'd be interested to try out Pale Moon on the Pi sometime in the future. Unless there are published builds that I'm not aware of, should Linux instructions for building on Linux just work, at least in theory? I have the latest arm64 flavor of Raspberry Pi OS, which is based on Debian.
-
- Lunatic
- Posts: 488
- Joined: 2022-03-23, 16:41
- Location: Chamber of Secrets
Re: Any Interest in aarch64 Linux Builds?
Sorry, I forgot I posted this topic in the first place.UCyborg wrote: ↑2024-03-28, 10:46So I'd be interested to try out Pale Moon on the Pi sometime in the future. Unless there are published builds that I'm not aware of, should Linux instructions for building on Linux just work, at least in theory? I have the latest arm64 flavor of Raspberry Pi OS, which is based on Debian.
Yeah, the build instructions and mozconfig on the Epyrus site will work for aarch64 Linux. I've built it with GCC 11 on Oracle Linux 8, as well as OpenSuSE Tumbleweed with GCC 13.
I change the optimization to --enable-optimize="-O2 -march=native -w" when building on my aarch64 machine locally for increased performance, but that's not required.
-
- Lunatic
- Posts: 488
- Joined: 2022-03-23, 16:41
- Location: Chamber of Secrets
-
- Lunatic
- Posts: 344
- Joined: 2019-01-10, 09:37
- Location: Slovenia
Re: Any Interest in aarch64 Linux Builds?
Welp, I've stumbled upon the first obstacle when attempting to compile from source, there's no Python 2.7 in Debian Bookworm.
So maybe putting older Debian Bullseye on a PC and hope I can get cross compiling for aarch64 working. I guess starting with https://jensd.be/1126/linux/cross-compiling-for-arm-or-aarch64-on-debian-or-ubuntu, then following steps for compiling Pale Moon, but modifying .mozconfig to export variables CC and CXX to point to ARM compilers and hoping it works.
So maybe putting older Debian Bullseye on a PC and hope I can get cross compiling for aarch64 working. I guess starting with https://jensd.be/1126/linux/cross-compiling-for-arm-or-aarch64-on-debian-or-ubuntu, then following steps for compiling Pale Moon, but modifying .mozconfig to export variables CC and CXX to point to ARM compilers and hoping it works.
-
- Lunatic
- Posts: 488
- Joined: 2022-03-23, 16:41
- Location: Chamber of Secrets
Re: Any Interest in aarch64 Linux Builds?
If it's helpful, my Basilisk build script works for Epyrus (and Pale Moon) regardless of if the host distro has Python 2.7 or any other of the required packages. That's what I used to build the Epyrus binary I provided earlier in the thread. The only requirement to run the script is that you have Docker installed and configured correctly.
-
- Contributing developer
- Posts: 1611
- Joined: 2018-10-28, 19:56
- Location: Georgia
Re: Any Interest in aarch64 Linux Builds?
That's a UXP issue, not an Epyrus issue. UXP uses it, so Epyrus has to be built that way too...UCyborg wrote: ↑2024-05-23, 21:19Welp, I've stumbled upon the first obstacle when attempting to compile from source, there's no Python 2.7 in Debian Bookworm.
So maybe putting older Debian Bullseye on a PC and hope I can get cross compiling for aarch64 working. I guess starting with https://jensd.be/1126/linux/cross-compiling-for-arm-or-aarch64-on-debian-or-ubuntu, then following steps for compiling Pale Moon, but modifying .mozconfig to export variables CC and CXX to point to ARM compilers and hoping it works.
viewtopic.php?p=245452
This has come up many times before, and we probably need to sticky the directions for building Python 2.7 from source at this point. :/
We are trying to fix a bunch of other issues, such as vendoring the parts of Autoconf 2.13 that we use, and also trying to make it possible to compile UXP without GTK2, but the Python 2.7 dependency is likely going to be a thorn in our side for years to come.
"The Athenians, however, represent the unity of these opposites; in them, mind or spirit has emerged from the Theban subjectivity without losing itself in the Spartan objectivity of ethical life. With the Athenians, the rights of the State and of the individual found as perfect a union as was possible at all at the level of the Greek spirit." -- Hegel's philosophy of Mind
-
- Lunatic
- Posts: 344
- Joined: 2019-01-10, 09:37
- Location: Slovenia
Re: Any Interest in aarch64 Linux Builds?
I found that thread after I already figured out how to install Python 2.7 system-wide, which turned out to be not too difficult. Dropped the cross-compiling idea as I didn't find the way how to get arm64 libraries on amd64 flavor of Debian.
So on a Raspberry, I started with downloading Python 2.7 packages that are available for Debian 11:
Code: Select all
# Download packages
wget http://ftp.debian.org/debian/pool/main/libf/libffi/libffi7_3.3-6_arm64.deb
wget http://ftp.debian.org/debian/pool/main/o/openssl/libssl1.1_1.1.1w-0+deb11u1_arm64.deb
wget http://ftp.debian.org/debian/pool/main/p/python2.7/libpython2.7-minimal_2.7.18-8+deb11u1_arm64.deb
wget http://ftp.debian.org/debian/pool/main/p/python2.7/python2.7-minimal_2.7.18-8+deb11u1_arm64.deb
wget http://ftp.debian.org/debian/pool/main/p/python2.7/libpython2.7-stdlib_2.7.18-8+deb11u1_arm64.deb
wget http://ftp.debian.org/debian/pool/main/p/python2.7/python2.7_2.7.18-8+deb11u1_arm64.deb
# install them
sudo dpkg -i libffi7_3.3-6_arm64.deb libssl1.1_1.1.1w-0+deb11u1_arm64.deb libpython2.7-minimal_2.7.18-8+deb11u1_arm64.deb python2.7-minimal_2.7.18-8+deb11u1_arm64.deb libpython2.7-stdlib_2.7.18-8+deb11u1_arm64.deb python2.7_2.7.18-8+deb11u1_arm64.deb
Other packages I installed were pretty much the same as outlined in the thread quoted at the top of the post.
My .mozconfig for Pale Moon (opted for GTK2 version):
Code: Select all
# Set GTK Version to 2 or 3
_GTK_VERSION=2
# Standard build options for Pale Moon
ac_add_options --enable-application=palemoon
ac_add_options --enable-optimize="-O2 -w"
ac_add_options --enable-default-toolkit=cairo-gtk$_GTK_VERSION
ac_add_options --enable-jemalloc
ac_add_options --enable-strip
ac_add_options --enable-devtools
ac_add_options --enable-av1
ac_add_options --enable-jxl
ac_add_options --disable-webrtc
ac_add_options --disable-gamepad
ac_add_options --disable-tests
ac_add_options --disable-debug
ac_add_options --disable-necko-wifi
ac_add_options --disable-updater
ac_add_options --with-pthreads
# Please see https://www.palemoon.org/redist.shtml for restrictions when using the official branding.
ac_add_options --enable-official-branding
export MOZILLA_OFFICIAL=1
export MOZ_PKG_SPECIAL=gtk$_GTK_VERSION
The compilation took little over 58 minutes. I put the source on the external WD 5 TB hard disk, it's one of the slower ones, uses SMR technology. That was the first time I ever compiled any web browser from source code and it works, so wow!
I realize that, I didn't mean to go too off-topic.athenian200 wrote: ↑2024-05-24, 21:05That's a UXP issue, not an Epyrus issue. UXP uses it, so Epyrus has to be built that way too...
I see Basilisk-Dev's aarch64 build of Epyrus definitely does not launch on the latest Debian 12 based Raspberry Pi OS as-is due to GLIBC. That's all I can tell, I never messed with GLIBC.