Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

danupsher

macrumors member
Original poster
Hey all,

I've been running an iMac G5 on Tiger 10.4.11

I spent some time cross-compiling modern packages for PPC.
Figured I'd share the results for anyone else still running Tiger on G5 hardware.

tiger-ppc-builds — pre-compiled modern software for Mac OS X 10.4 Tiger on PowerPC G5.

https://github.com/danupsher/tiger-ppc-builds

What's available (as GitHub releases):

- GCC 15.2.0 — C/C++ compiler with C++23 support and full exception handling
- Python 3.13.12 — Full stdlib including sqlite3, ssl, ctypes, readline, lzma, bz2. HTTPS works out of the box.
- OpenSSL 3.6.1 — Static libs + headers, mainly useful for building other software
- curl 8.12.1 — HTTPS support via OpenSSL, TLS 1.2/1.3
- git 2.48.1 — Full git with HTTPS clone support (you can clone from GitHub)
- ffmpeg 7.1.1 — ffmpeg + ffprobe with AAC, FLAC, H.264, and more

All six tested on real hardware: iMac G5 (PowerMac8,2), G5 2GHz, 1GB RAM, Tiger 10.4.11.

Installation:

Download the tarball for the package you want from the Releases page, then extract to root. Most things land in /usr/local/bin.

tar xzf <package>.tar.gz -C /

That's it. No installer, no dependencies to chase down (each package bundles what it needs).

Compatibility note — G5 only:

These are compiled with -mcpu=970, so they target the G5 (PPC970) specifically. They will not run on G3 or G4. Mac OS X 10.4.x Tiger required.

How they were built:

Cross-compiled on Linux targeting powerpc-apple-darwin8, with the final linking done SSH-proxied through a real Tiger Mac to keep the binaries Darwin-native. Not a trivial setup to get right, but the end result is straightforward to use.

Hope this is useful to someone. If you run into issues or want to request another package, feel free to open an issue on GitHub or reply here.
 
  • Love
Reactions: TheShortTimer
Phenomenal stuff! I would love to see it available for G4s, though. As a general rule my G5 machines primarily use Leopard/SL or other PPC64 OSes. Tiger is my go-to for G4s (though I do have it on my PMG5 for Classic purposes more than anything). Will test out as soon as I get the opportunity. [Posting from my iBook G4 running Tiger 😉 ]
 
  • Like
Reactions: danupsher
Hey all,

I've been running an iMac G5 on Tiger 10.4.11

I spent some time cross-compiling modern packages for PPC.
Figured I'd share the results for anyone else still running Tiger on G5 hardware.

tiger-ppc-builds — pre-compiled modern software for Mac OS X 10.4 Tiger on PowerPC G5.

https://github.com/danupsher/tiger-ppc-builds

What's available (as GitHub releases):

- GCC 15.2.0 — C/C++ compiler with C++23 support and full exception handling
- Python 3.13.12 — Full stdlib including sqlite3, ssl, ctypes, readline, lzma, bz2. HTTPS works out of the box.
- OpenSSL 3.6.1 — Static libs + headers, mainly useful for building other software
- curl 8.12.1 — HTTPS support via OpenSSL, TLS 1.2/1.3
- git 2.48.1 — Full git with HTTPS clone support (you can clone from GitHub)
- ffmpeg 7.1.1 — ffmpeg + ffprobe with AAC, FLAC, H.264, and more

All six tested on real hardware: iMac G5 (PowerMac8,2), G5 2GHz, 1GB RAM, Tiger 10.4.11.

Installation:

Download the tarball for the package you want from the Releases page, then extract to root. Most things land in /usr/local/bin.

tar xzf <package>.tar.gz -C /

That's it. No installer, no dependencies to chase down (each package bundles what it needs).

Compatibility note — G5 only:

These are compiled with -mcpu=970, so they target the G5 (PPC970) specifically. They will not run on G3 or G4. Mac OS X 10.4.x Tiger required.

How they were built:

Cross-compiled on Linux targeting powerpc-apple-darwin8, with the final linking done SSH-proxied through a real Tiger Mac to keep the binaries Darwin-native. Not a trivial setup to get right, but the end result is straightforward to use.

Hope this is useful to someone. If you run into issues or want to request another package, feel free to open an issue on GitHub or reply here.
Thank you for the fix to gcc15! Everything else builds fine with PowerPC ports, but I had no luck with gcc15. Would it be okay if your fix gets added to the ports repo?
 
  • Like
Reactions: danupsher
Hey all,

I've been running an iMac G5 on Tiger 10.4.11

I spent some time cross-compiling modern packages for PPC.
Figured I'd share the results for anyone else still running Tiger on G5 hardware.

tiger-ppc-builds — pre-compiled modern software for Mac OS X 10.4 Tiger on PowerPC G5.

https://github.com/danupsher/tiger-ppc-builds

What's available (as GitHub releases):

- GCC 15.2.0 — C/C++ compiler with C++23 support and full exception handling
- Python 3.13.12 — Full stdlib including sqlite3, ssl, ctypes, readline, lzma, bz2. HTTPS works out of the box.
- OpenSSL 3.6.1 — Static libs + headers, mainly useful for building other software
- curl 8.12.1 — HTTPS support via OpenSSL, TLS 1.2/1.3
- git 2.48.1 — Full git with HTTPS clone support (you can clone from GitHub)
- ffmpeg 7.1.1 — ffmpeg + ffprobe with AAC, FLAC, H.264, and more

All six tested on real hardware: iMac G5 (PowerMac8,2), G5 2GHz, 1GB RAM, Tiger 10.4.11.

Installation:

Download the tarball for the package you want from the Releases page, then extract to root. Most things land in /usr/local/bin.

tar xzf <package>.tar.gz -C /

That's it. No installer, no dependencies to chase down (each package bundles what it needs).

Compatibility note — G5 only:

These are compiled with -mcpu=970, so they target the G5 (PPC970) specifically. They will not run on G3 or G4. Mac OS X 10.4.x Tiger required.

How they were built:

Cross-compiled on Linux targeting powerpc-apple-darwin8, with the final linking done SSH-proxied through a real Tiger Mac to keep the binaries Darwin-native. Not a trivial setup to get right, but the end result is straightforward to use.

Hope this is useful to someone. If you run into issues or want to request another package, feel free to open an issue on GitHub or reply here.
Update

What's new:
- GCC 15.2.0 now runs natively on any PPC Mac (G3, G4, G5) — not just G5 anymore
- Full C++20 and C++23 support: concepts, spaceship operator, consteval, deducing this, if consteval, coroutines, etc.
- Complete STL: vector, map, unordered_map, string, regex, chrono, optional, variant, any, and more
- Full C++ exception handling: throw/catch with all types, deep unwind, multi-catch, RAII cleanup


Also available as a standalone Linux cross-compiler — compile PPC Tiger binaries from any x86_64 Linux box with no Mac needed. Pipeline: GCC 15 cc1/cc1plus → assembly fixup → cctools assembler → ld64 (Apple's linker ported to Linux).
All running natively on Linux.

Pre-built packages (all tested on Tiger):
- Python 3.13.12
- OpenSSL 3.6.1
- curl 8.12.1
- git 2.48.1
- ffmpeg 7.1.1

Everything is on GitHub: https://github.com/danupsher/tiger-ppc-builds

The cross-compiler tarball is 68MB and includes the Mac OS X 10.4u SDK — just extract, add to PATH, and ppc-ld64-g++ -std=c++17 program.cpp -o program.
 
Last edited:
Nice set - the G5 toolchain drop is really handy.

I did a G4/AltiVec counterpart for Python: 3.12.11, built natively on an
iBook G4 rather than cross-compiled, so it runs on G4 as well as G5. It ships
as a relocatable package (vendored dylibs, @loader_path) and I've verified
Flask and Django end to end. Separate thread:

CPython needed four small patches for Tiger - pthread_threadid_np(),
copyfile.h, the ttyname_r signature under __DARWIN_UNIX03, and _scproxy's
framework headers. They're OS-version fixes, not CPU-specific, so they may be
useful for your 3.13 too. All written up in the repo.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.