I would like to compile PPC on my windows 10 or my OSX 10.14 Intel, but I have no idea how to do it (I'm learning everything on my own), I have git on my windows and the source code of the OSX version
It's a very broad question. What are you trying to compile and what language?
You'll need a compiler, at a minimum. You'll probably want 'make', though strictly speaking, you don't need it. You can get various Xcode versions from Macintosh Garden that will have both. You'll need any libraries the code depends on.
Assuming you're compiling C on OS X, I would recommend IBM's XL compiler. I found it produces slightly faster code, though it may not necessarily work for you depending on the project.
But the intuition of doing for ppc is to keep the ppc platform active. I don't have to worry about arm, as every mobile developer will easily port everything to the new armGood luck with that ! I like that game, but to make it run on PPC - you are many years too late for this. Try doing it for ARM which will be the replacement for PPC and Intel.
I would start with the MacPorts instruction of https://wiki.eduke32.com/wiki/Building_EDuke32_on_macOS using either 10.5 or 10.6 with corresponding latest Xcode 3:
NOTE, MacPorts could be a bit "invasive". Do proper backup or try it on a disposable system.
But the intuition of doing for ppc is to keep the ppc platform active. I don't have to worry about arm, as every mobile developer will easily port everything to the new arm
Good luck with that ! I like that game, but to make it run on PPC - you are many years too late for this. Try doing it for ARM which will be the replacement for PPC and Intel.
But, the issue is we all still want to use PPC machines for an everyday driver. I know and support your efforts to keep the PowerPC platform alive, at least under Leopard.. But, realistically, how much longer do we have until PPC will be useless ? Once Kaiser retires and decides to not further develop tenfourfox, what then ? I can see PowerPC lasting at least until the end of 2025.. but by then it would be over 2.5 decades since PPC G3,G4, and G5 came into existence. I hope I am wrong, but once we lose Kaiser, who will develop and keep tenfourfox going ?
I understand your being angry, but time waits for no one.. and PowerPC's days are numbered.. Kaiser won't last forever and eventually in the not so distant future, I can see on his website that tenfourfox has reached end of development because he wants to retire. Maybe I am wrong.. Maybe PPC will last into the next decade and beyond. By that time I will be in my 60's and 70's - I wouldn't care at that point.
I would like to compile PPC on my windows 10 or my OSX 10.14 Intel, but I have no idea how to do it (I'm learning everything on my own), I have git on my windows and the source code of the OSX version
EDuke32 r(?)
Built Sep 13 2020 17:20:56, GCC 7.5.0, 32-bit big-endian
Using /Users/user/Library/Application Support/EDuke32/ for game data
Application parameters: /Users/user/Downloads/DUKE3D.GRP
Using /Users/user/edukeolder/EDuke32.app/Contents/Resources/ for game data
Using /Users/user/edukeolder/EDuke32.app/Contents/MacOS/ for game data
Using /Users/user/.config/eduke32/ for game data
Initializing SDL system interface (compiled against SDL version 1.2.15, found version 1.2.15)
Using "Quartz" video driver
Searching for game data...
Found no recognized game data!
Warning: could not find main data file "DUKE3D.GRP"!
Using file "/Users/user/Downloads/DUKE3D.GRP" as game data.
Compiling: GAME.CON (99639 bytes)
Including: DEFS.CON (28893 bytes)
Including: USER.CON (36930 bytes)
USER.CON:751: warning: sound 261 already defined (hydro43.voc)
GAME.CON: In state `blimphitstate':
GAME.CON:157: warning: expected action, found define.
GAME.CON: In actor `ORGANTIC':
GAME.CON:1923: warning: found `else' with no `if'
GAME.CON: In state `pigshootenemystate':
GAME.CON:2817: warning: found `else' with no `if'
Found 4 warning(s), 0 error(s).
Compiled 49820 bytes in 37ms, v1.3D compatibility mode
WARNING: Calculated sine and arctangent tables differ from original!
Cache object array initialized with 8192 entries.
Initialized 96.0M cache
Sound hlminhal.voc(#23) not found!
Sound hlmexhal.voc(#24) not found!
Sound yes.voc(#45) not found!
Sound fan.voc(#77) not found!
Sound hover.voc(#80) not found!
Sound turrrm.voc(#145) not found!
Sound turrrg.voc(#146) not found!
Sound turrat.voc(#147) not found!
Sound b3atk01.voc(#152) not found!
Sound turrpn.voc(#161) not found!
Sound turrdy.voc(#162) not found!
Sound b3atk01.voc(#176) not found!
Sound vpiss2.voc(#182) not found!
Initializing OSD...
No game controllers found
Executing "settings.cfg"
bind <key> <string>: associates a keypress with a string of console input. Type "bind showkeys" for a list of keys and "listsymbols" for a list of valid console commands.
Setting video mode 1024x768 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 1024x768x8 windowed! Trying next mode...
Setting video mode 1024x768 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 1024x768x8 windowed! Trying next mode...
Setting video mode 800x600 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 800x600x8 windowed! Trying next mode...
Setting video mode 1680x1050 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 1680x1050x8 windowed! Trying next mode...
Setting video mode 1024x768 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 1024x768x8 windowed! Trying next mode...
Setting video mode 800x600 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 800x600x8 windowed! Trying next mode...
Setting video mode 1680x1050 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 1680x1050x8 windowed! Trying next mode...
Setting video mode 1600x900 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 1600x900x8 windowed! Trying next mode...
Setting video mode 1366x768 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 1366x768x8 windowed! Trying next mode...
Setting video mode 1280x960 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 1280x960x8 windowed! Trying next mode...
Setting video mode 1280x720 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 1280x720x8 windowed! Trying next mode...
Setting video mode 1152x864 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 1152x864x8 windowed! Trying next mode...
Setting video mode 1024x768 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 1024x768x8 windowed! Trying next mode...
Setting video mode 1024x600 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 1024x600x8 windowed! Trying next mode...
Setting video mode 800x600 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 800x600x8 windowed! Trying next mode...
Setting video mode 640x480 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 640x480x8 windowed! Trying next mode...
Setting video mode 1680x1050 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 1680x1050x8 windowed! Trying next mode...
Setting video mode 1600x900 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 1600x900x8 windowed! Trying next mode...
Setting video mode 1366x768 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 1366x768x8 windowed! Trying next mode...
Setting video mode 1280x960 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 1280x960x8 windowed! Trying next mode...
Setting video mode 1280x720 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 1280x720x8 windowed! Trying next mode...
Setting video mode 1152x864 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 1152x864x8 windowed! Trying next mode...
Setting video mode 1024x768 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 1024x768x8 windowed! Trying next mode...
Setting video mode 1024x600 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 1024x600x8 windowed! Trying next mode...
Setting video mode 800x600 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 800x600x8 windowed! Trying next mode...
Setting video mode 640x480 (8-bpp windowed)
Unable to set video mode!
Failure setting video mode 640x480x8 windowed! Trying next mode...
Fatal error: unable to set any video mode!
So what? People still on on powerpc mac are doing it for nostalgia and/or the challenge. That's not going to change regardless of what Tim Cook or Cameron Kaiser decide to do. Also going into someone else's thread and complaining about the death of a 15 year old platform is rude. Stop.
So I looked a bit into this. If all you want to do is run Duke on ppc then there's a prebuilt binary from 2013 that still works. eduke32_osx-sdl_leopard_svn3898.dmg 4160KB Nov 20 2013 12:20:27 AM
If you're trying to actually build it, then that's going to be more challenging. I gave it a go and spent a couple of hours on it. I was able to build the application and run it, but starting the actual game didn't work. Seems like something broke rendering the video via SDL. The console output is in the spoiler below.
Code:EDuke32 r(?) Built Sep 13 2020 17:20:56, GCC 7.5.0, 32-bit big-endian Using /Users/user/Library/Application Support/EDuke32/ for game data Application parameters: /Users/user/Downloads/DUKE3D.GRP Using /Users/user/edukeolder/EDuke32.app/Contents/Resources/ for game data Using /Users/user/edukeolder/EDuke32.app/Contents/MacOS/ for game data Using /Users/user/.config/eduke32/ for game data Initializing SDL system interface (compiled against SDL version 1.2.15, found version 1.2.15) Using "Quartz" video driver Searching for game data... Found no recognized game data! Warning: could not find main data file "DUKE3D.GRP"! Using file "/Users/user/Downloads/DUKE3D.GRP" as game data. Compiling: GAME.CON (99639 bytes) Including: DEFS.CON (28893 bytes) Including: USER.CON (36930 bytes) USER.CON:751: warning: sound 261 already defined (hydro43.voc) GAME.CON: In state `blimphitstate': GAME.CON:157: warning: expected action, found define. GAME.CON: In actor `ORGANTIC': GAME.CON:1923: warning: found `else' with no `if' GAME.CON: In state `pigshootenemystate': GAME.CON:2817: warning: found `else' with no `if' Found 4 warning(s), 0 error(s). Compiled 49820 bytes in 37ms, v1.3D compatibility mode WARNING: Calculated sine and arctangent tables differ from original! Cache object array initialized with 8192 entries. Initialized 96.0M cache Sound hlminhal.voc(#23) not found! Sound hlmexhal.voc(#24) not found! Sound yes.voc(#45) not found! Sound fan.voc(#77) not found! Sound hover.voc(#80) not found! Sound turrrm.voc(#145) not found! Sound turrrg.voc(#146) not found! Sound turrat.voc(#147) not found! Sound b3atk01.voc(#152) not found! Sound turrpn.voc(#161) not found! Sound turrdy.voc(#162) not found! Sound b3atk01.voc(#176) not found! Sound vpiss2.voc(#182) not found! Initializing OSD... No game controllers found Executing "settings.cfg" bind <key> <string>: associates a keypress with a string of console input. Type "bind showkeys" for a list of keys and "listsymbols" for a list of valid console commands. Setting video mode 1024x768 (8-bpp windowed) Unable to set video mode! Failure setting video mode 1024x768x8 windowed! Trying next mode... Setting video mode 1024x768 (8-bpp windowed) Unable to set video mode! Failure setting video mode 1024x768x8 windowed! Trying next mode... Setting video mode 800x600 (8-bpp windowed) Unable to set video mode! Failure setting video mode 800x600x8 windowed! Trying next mode... Setting video mode 1680x1050 (8-bpp windowed) Unable to set video mode! Failure setting video mode 1680x1050x8 windowed! Trying next mode... Setting video mode 1024x768 (8-bpp windowed) Unable to set video mode! Failure setting video mode 1024x768x8 windowed! Trying next mode... Setting video mode 800x600 (8-bpp windowed) Unable to set video mode! Failure setting video mode 800x600x8 windowed! Trying next mode... Setting video mode 1680x1050 (8-bpp windowed) Unable to set video mode! Failure setting video mode 1680x1050x8 windowed! Trying next mode... Setting video mode 1600x900 (8-bpp windowed) Unable to set video mode! Failure setting video mode 1600x900x8 windowed! Trying next mode... Setting video mode 1366x768 (8-bpp windowed) Unable to set video mode! Failure setting video mode 1366x768x8 windowed! Trying next mode... Setting video mode 1280x960 (8-bpp windowed) Unable to set video mode! Failure setting video mode 1280x960x8 windowed! Trying next mode... Setting video mode 1280x720 (8-bpp windowed) Unable to set video mode! Failure setting video mode 1280x720x8 windowed! Trying next mode... Setting video mode 1152x864 (8-bpp windowed) Unable to set video mode! Failure setting video mode 1152x864x8 windowed! Trying next mode... Setting video mode 1024x768 (8-bpp windowed) Unable to set video mode! Failure setting video mode 1024x768x8 windowed! Trying next mode... Setting video mode 1024x600 (8-bpp windowed) Unable to set video mode! Failure setting video mode 1024x600x8 windowed! Trying next mode... Setting video mode 800x600 (8-bpp windowed) Unable to set video mode! Failure setting video mode 800x600x8 windowed! Trying next mode... Setting video mode 640x480 (8-bpp windowed) Unable to set video mode! Failure setting video mode 640x480x8 windowed! Trying next mode... Setting video mode 1680x1050 (8-bpp windowed) Unable to set video mode! Failure setting video mode 1680x1050x8 windowed! Trying next mode... Setting video mode 1600x900 (8-bpp windowed) Unable to set video mode! Failure setting video mode 1600x900x8 windowed! Trying next mode... Setting video mode 1366x768 (8-bpp windowed) Unable to set video mode! Failure setting video mode 1366x768x8 windowed! Trying next mode... Setting video mode 1280x960 (8-bpp windowed) Unable to set video mode! Failure setting video mode 1280x960x8 windowed! Trying next mode... Setting video mode 1280x720 (8-bpp windowed) Unable to set video mode! Failure setting video mode 1280x720x8 windowed! Trying next mode... Setting video mode 1152x864 (8-bpp windowed) Unable to set video mode! Failure setting video mode 1152x864x8 windowed! Trying next mode... Setting video mode 1024x768 (8-bpp windowed) Unable to set video mode! Failure setting video mode 1024x768x8 windowed! Trying next mode... Setting video mode 1024x600 (8-bpp windowed) Unable to set video mode! Failure setting video mode 1024x600x8 windowed! Trying next mode... Setting video mode 800x600 (8-bpp windowed) Unable to set video mode! Failure setting video mode 800x600x8 windowed! Trying next mode... Setting video mode 640x480 (8-bpp windowed) Unable to set video mode! Failure setting video mode 640x480x8 windowed! Trying next mode... Fatal error: unable to set any video mode!
So this app uses Cocoa for the launcher and other things. I don't think you'd be able to compile those on a modern mac as Apple is very aggressive on removing depreciated build tools. I think trying to get the development files and a toolchain working on a modern mac would be a major task onto itself. So you'll pretty much have to use a real ppc device. If all you have is a slow powerbook, then yeah that'll be rough. Maybe a VM might be a better solution? I personally have a headless quad g5 I use for all compiling. I ssh into it and build on there.
I can give you more info on how to build this if you want. But it's kinda involved and it'll take a lot of fudging the files to get it to build. And that's not even getting into resolving the SDL issue which you'll have to tackle on your own.
That's awesome! You should definitely post it. I'm sure someone will appreciate it.
Bonus points if you have time to post instructions on how you did it. Great for others in the future.
No, I have SDL1 and SDL2 on my leopard, I never had any problemsDid you also run into SDL issues?
If you're able to, you should package your fixes into macports portfiles and submit a PR to them. That'd a tremendous help to the communityNo, I have SDL1 and SDL2 on my leopard, I never had any problems