MacOS build instructions

Discussions for the Apple Mac OS builds of Pale Moon

Moderator: dbsoft

Forum rules
Important note:
The old Mac OS versions of Pale Moon were provided by various people and not official or in any way organized. Please make sure you check the date of topic threads to know if the topic is current or relevant! We are using this board for both old discussions and new development of Pale Moon on Mac.

Any specific bugs you find that don't have their own topic yet: please make a new topic; one bug per topic please to keep things organized.
User avatar
ianhorse
New to the forum
New to the forum
Posts: 1
Joined: 2026-05-14, 17:04

MacOS build instructions

Post by ianhorse » 2026-05-14, 17:09

Looking here: https://developer.palemoon.org/build/, there are build instructions for Windows, Solaris, and Linux. Are there any build instructions directly for MacOS? I know that I could just try the Linux instructions, but would rather not waste all the time for a broken binary.

dbsoft
Project Contributor
Project Contributor
Posts: 546
Joined: 2020-02-21, 17:35

Re: MacOS build instructions

Post by dbsoft » 2026-05-14, 18:23

I should probably talk to Moonchild about putting them back up, but for the moment the instructions are on my personal site:

https://dbsoft.org/whitestar-build-mac.php

Basically just change it from White Star to Pale Moon.

Code: Select all

git clone https://repo.palemoon.org/MoonchildProductions/Pale-Moon.git ./
git submodule init && git submodule update
git checkout release && git submodule update
.mozconfig

Code: Select all

# Standard build options for Pale Moon
ac_add_options --enable-application=palemoon
ac_add_options --enable-optimize=-O3
ac_add_options --enable-jemalloc
ac_add_options --enable-strip
ac_add_options --enable-devtools
ac_add_options --enable-av1
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-macos-sdk=/Path/to/SDKs/MacOSX13.3.sdk
# Use the following lines for Apple Silicon builds
# ac_add_options --host=aarch64-apple-darwin
# ac_add_options --target=aarch64-apple-darwin

# 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
#ac_add_options --with-branding=palemoon/branding/beta

# Uncomment if using clang++ from Xcode 10 or higher
# export CXX="/usr/bin/clang++ -stdlib=libc++"

User avatar
noobsoftware
Moonbather
Moonbather
Posts: 54
Joined: 2020-09-01, 15:19

Re: MacOS build instructions

Post by noobsoftware » 2026-05-24, 02:54

I've been trying to build UXP as XulRunner using these build instructions but i keep getting errors with SVE:

.../uxp/uxp/media/libvpx/libvpx/vpx_dsp/arm/vpx_neon_sve_bridge.h:16:10: fatal error: 'arm_neon_sve_bridge.h' file not found
3:37.48 #include <arm_neon_sve_bridge.h>
...

Is this possibly a known error?

I am using the UXP latest release and this .mozconfig:

# Standard build options for Pale Moon
ac_add_options --enable-application=xulrunner
ac_add_options --enable-optimize=-O3
ac_add_options --enable-jemalloc
ac_add_options --enable-strip
ac_add_options --enable-devtools
ac_add_options --enable-av1
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-macos-sdk=/Users/siggi/Downloads/macos-sdk-13.3/MacOSX13.3.sdk
#ac_add_options --with-macos-sdk=/Users/siggi/downloads/macos-sdk-13.3
# Use the following lines for Apple Silicon builds
ac_add_options --host=aarch64-apple-darwin
ac_add_options --target=aarch64-apple-darwin

# 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
#ac_add_options --with-branding=palemoon/branding/beta

# Uncomment if using clang++ from Xcode 10 or higher
export CXX="/usr/bin/clang++ -stdlib=libc++"

User avatar
noobsoftware
Moonbather
Moonbather
Posts: 54
Joined: 2020-09-01, 15:19

Re: MacOS build instructions

Post by noobsoftware » 2026-05-24, 08:11

I was able to remove all the failing references from the code. But it seems i'm not getting libxul.dylib in the end product. Is it a possibility that anyone could build XULRunner for macOS and distribute it? I would like to start work on a few XUL projects and it would be such a time saver to be able to use XULRunner and build an app that way. I do get a few dylibs and binaries in the end but when trying to run the XULRunner binary i get: Couldn't load XPCOM.

dbsoft
Project Contributor
Project Contributor
Posts: 546
Joined: 2020-02-21, 17:35

Re: MacOS build instructions

Post by dbsoft » 2026-05-25, 01:34

XULRunner was brought back in and it didn't work on Mac, I never bothered to fix it since it isn't something I use.

User avatar
noobsoftware
Moonbather
Moonbather
Posts: 54
Joined: 2020-09-01, 15:19

Re: MacOS build instructions

Post by noobsoftware » 2026-05-25, 09:54

Alrighty.
---Edit---
Just as a curiosity, does anyone know what it is in general that makes UXP not work well on mac in some cases and what it is that causes issues with ARM? I am interested in using UXP for building apps in general that would in theory work for mac as well as linux, and even possibly windows.
---Edit---
I see i can run Pale Moon as "xulrunner" by running the --app parameter, i thought it would clash with Pale Moon but it seems to work.

User avatar
Basilisk-Dev
Astronaut
Astronaut
Posts: 671
Joined: 2022-03-23, 16:41
Location: Chamber of Secrets

Re: MacOS build instructions

Post by Basilisk-Dev » 2026-05-25, 17:46

noobsoftware wrote:
2026-05-25, 09:54
Just as a curiosity, does anyone know what it is in general that makes UXP not work well on mac in some cases and what it is that causes issues with ARM?
Not sure if this is what you are asking, but UXP does not have a working JIT for aarch64/ARM64 so some sites/benchmarks will perform more slowly, and WebAssembly won't work at all without a JIT.
Basilisk Project Owner

viewtopic.php?f=61&p=230756