Discussion in 'Civ4 - Macintosh' started by Xyth, Jul 10, 2015.
Does anyone know if this method also works for Mojave?
Can confirm, just did it again. I was getting panic attacks about losing Civ IV forever.
May become reality in whatever comes after Mojave, as it's meant tol be dropping support for 32 bit apps.
Thanks for the hints and the Patch.
Since I did not want to jeopardize my system integrity (by disabling SIP to alter the contents of the /System/Library directory) just to play an old game, I decided to install the missing framework files into /Library/Frameworks/Python.framework/Versions/ and to patch the hardcoded path in the Civilization IV executable.
I used a hex-editor ("0xED") to locate the string and change it (there are 2 occurences, overwrite the old string and zero-terminate it, leave the remaining part of the old string in place, do not shorten the file!). It works like a charm.
SIP is only disabled for the duration of installing the missing Python files, so this feels a bit excessive, but if it works it works!
EDIT: This method could have the advantage of not needing to reinstall this fix every major update. Not sure if the /Library/ location gets wiped of changes like /System/Library does.
Yep, I got that. Temporarily disabled to put some files - which were provided by "some dude on the internet" - to /System/Libraries ... (what could possibly go wrong?)
I just wanted to keep that directory "vanilla" by patching the executable and placing the files in a less privileged directory.
So at least this demonstrates that a less invasive (regarding SIP) possibility exists - even if one needs to poke around with a hex editor. (Another bonus: No reboot required).
It also works for Warlords and BTS btw.
Edit: Good point regarding persistence. I just performed a major update a week ago and there is still some stuff in /Library/Frameworks (e.g. OSXFUSE) which was installed before the update. So it seems, it could survive there...
Separate names with a comma.