This is a continuation of @kencu instructions here: https://forums.macrumors.com/thread...s.2232031/page-45?post=30227761#post-30227761
Macports Guide: https://guide.macports.org/
[The post will keep being updated]
I refactor the post in order to make it easier: you won't need to refer to the earlier thread.
So, what you need to do step-wise:
1. Download Macports source code here: MacPorts-2.8.1
2. Extract the archive, then:
Or from my tree (sandbox fixed for 10A190): https://github.com/barracuda156/macports-base-10A190
3. Assuming you have BBEdit installed,
That opens the config file, add the following lines, save the file:
The following setting may be useful if you have more than one Xcode installation (relevant for 10.6.8 Rosetta):
4. Then open this file:
Uncomment the last line, so that you have:
5. Open sandbox config:
Replace one line (in fact, just a number), save the file:
6. Add the following to your PATH:
See here: https://guide.macports.org/#installing.shell
This is needed for the shell (zsh, bash) to recognize "port" command. (Of course you may also run it instead as /opt/local/bin/port.)
7. Run the port sync (will take quite a while):
8. Open this:
Add #override repo lines, so that in the bottom you have:
9. Place the extracted PPCSnowLeopardPorts folder in /opt.
10. Run port sync again:
11. Run the following:
This (11) should be done every time after port sync. (Nothing breaks down if you don't, but Macports gonna try using compilers that are unavailable for 10.6 PPC.)
12. Build whatever you need with "sudo port -v install". More useful info here: https://guide.macports.org/
P. S. The attachment below is the original repo by @kencu
UPD (29.03.22): As of now, there is an error on 10A96. DO NOT USE 10A96.
UPD (30.08.22): Large part of Rosetta (and by extension some of 10.6 PPC) fixes are merged in Macports base. Some errors reported below are no longer relevant.
gcc10, gcc11 and gcc12 still need custom patches for 10.6 PPC.
UPD (06.10.22): Nuked my Rosetta ports tree for now, since everything is either merged to Macports or in the process (10.6.8 is officially supported, so fixes are accepted, usually).
THERE ARE STILL FEW ISSUES WITH ROSETTA – so even though it works, it is not smooth.
CUSTOM FIXES FOR 10.6 PPC (10A190): https://github.com/barracuda156/macports-ports/tree/snow-ppc (here I will put the staff that either won’t be or unlikely to be accepted with upstream).
Ports fixed for 10A190 (I will try keeping versions updated with the master):
cmake-bootstrap
gdb-apple
git (at the moment there is a general bug preventing a build with gcc-4.2; use gcc7 or later until fixed: sudo port -v install/upgrade git configure.compiler=macports-gcc-7)
ld64-127
openssl11
openssl3
gcc7 / libgcc7
gcc10-bootstrap
gcc10 / libgcc10
gcc11 / libgcc11
gcc12 / libgcc12
llvm-5.0
libsdl12
wxWidgets-3.0
xorg-server-legacy
It can be reasonably assumed that everything else should work as-is (aside of other gcc versions, I will make fixes for some soon), as long as PPC is supported in principle. If something works on 10.5.8, but fails on 10.6 PPC, REPORT HERE, I will try fixing it.
This branch is ONLY for 10A190. Do not use anything from here for any other PPC systems, including 10.6.x Rosetta.
Macports Guide: https://guide.macports.org/
[The post will keep being updated]
I refactor the post in order to make it easier: you won't need to refer to the earlier thread.
So, what you need to do step-wise:
1. Download Macports source code here: MacPorts-2.8.1
2. Extract the archive, then:
Code:
cd MacPorts-2.8.0/
./configure
make && sudo make install
3. Assuming you have BBEdit installed,
Code:
bbedit /opt/local/etc/macports/macports.conf
That opens the config file, add the following lines, save the file:
Code:
build_arch ppc
universal_archs
buildfromsource always
cxx_stdlib libstdc++
buildmakejobs /NUMBER OF CPU CORES/
The following setting may be useful if you have more than one Xcode installation (relevant for 10.6.8 Rosetta):
Code:
developer_dir /Developer
4. Then open this file:
Code:
bbedit /opt/local/etc/macports/archive_sites.conf
Uncomment the last line, so that you have:
Code:
name macports_archives
5. Open sandbox config:
Code:
bbedit /opt/local/libexec/macports/lib/port1.0/portsandbox.tcl
Replace one line (in fact, just a number), save the file:
Code:
@@ -121,7 +121,7 @@
foreach dir $allow_dirs {
foreach perm $perms {
append portsandbox_profile " (allow $perm ("
- if {${os.major} > 9} {
+ if {${os.major} > 10} {
append portsandbox_profile "subpath \"${dir}\"))"
} else {
append portsandbox_profile "regex #\"^${dir}/\"))"
6. Add the following to your PATH:
Code:
PATH=/opt/local/bin:/opt/local/sbin:$PATH
This is needed for the shell (zsh, bash) to recognize "port" command. (Of course you may also run it instead as /opt/local/bin/port.)
7. Run the port sync (will take quite a while):
Code:
sudo port -v sync
8. Open this:
Code:
bbedit /opt/local/etc/macports/sources.conf
Add #override repo lines, so that in the bottom you have:
Code:
# override repo
file:///opt/PPCSnowLeopardPorts
rsync://rsync.macports.org/macports/release/tarballs/ports.tar [default]
9. Place the extracted PPCSnowLeopardPorts folder in /opt.
10. Run port sync again:
Code:
sudo port -v sync
11. Run the following:
Code:
sudo mv /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/_resources/port1.0/compilers /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/_resources/port1.0/compilers-moved
sudo ln -s /opt/PPCSnowLeopardPorts/_resources/port1.0/compilers /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/_resources/port1.0/compilers
This (11) should be done every time after port sync. (Nothing breaks down if you don't, but Macports gonna try using compilers that are unavailable for 10.6 PPC.)
12. Build whatever you need with "sudo port -v install". More useful info here: https://guide.macports.org/
P. S. The attachment below is the original repo by @kencu
UPD (29.03.22): As of now, there is an error on 10A96. DO NOT USE 10A96.
UPD (30.08.22): Large part of Rosetta (and by extension some of 10.6 PPC) fixes are merged in Macports base. Some errors reported below are no longer relevant.
gcc10, gcc11 and gcc12 still need custom patches for 10.6 PPC.
UPD (06.10.22): Nuked my Rosetta ports tree for now, since everything is either merged to Macports or in the process (10.6.8 is officially supported, so fixes are accepted, usually).
THERE ARE STILL FEW ISSUES WITH ROSETTA – so even though it works, it is not smooth.
CUSTOM FIXES FOR 10.6 PPC (10A190): https://github.com/barracuda156/macports-ports/tree/snow-ppc (here I will put the staff that either won’t be or unlikely to be accepted with upstream).
Ports fixed for 10A190 (I will try keeping versions updated with the master):
cmake-bootstrap
gdb-apple
git (at the moment there is a general bug preventing a build with gcc-4.2; use gcc7 or later until fixed: sudo port -v install/upgrade git configure.compiler=macports-gcc-7)
ld64-127
openssl11
openssl3
gcc7 / libgcc7
gcc10-bootstrap
gcc10 / libgcc10
gcc11 / libgcc11
gcc12 / libgcc12
llvm-5.0
libsdl12
wxWidgets-3.0
xorg-server-legacy
It can be reasonably assumed that everything else should work as-is (aside of other gcc versions, I will make fixes for some soon), as long as PPC is supported in principle. If something works on 10.5.8, but fails on 10.6 PPC, REPORT HERE, I will try fixing it.
This branch is ONLY for 10A190. Do not use anything from here for any other PPC systems, including 10.6.x Rosetta.
Attachments
Last edited: