Developers wanted to help port XBMC for Mac to PPC (PowerPC) processor architecture

  Thread Rating:
  • 5 Votes - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
Gamester17 Offline
Team-XBMC Forum Moderator
Posts: 10,523
Joined: Sep 2003
Reputation: 10
Location: Sweden
Information  Developers wanted to help port XBMC for Mac to PPC (PowerPC) processor architecture
Post: #1
Development to port XBMC for Linux to PPC (PowerPC) have begun and source code patches for that is available, however these developers are only focusing on XBMC for Linux, not XBMC for Mac (and no one on Team-XBMC even own a PowerPC based Mac), thus outside/third-party developers are needed to port XBMC to PPC so that is can be compiled and run on all PowerPC based Mac's out there.

For more information please see these threads in the XBMC forum:
http://forum.xbmc.org/showthread.php?tid=34439
http://forum.xbmc.org/showthread.php?tid=32320
http://forum.xbmc.org/showthread.php?tid=35435

Are there any C++ programmers out there who owns a PPC Mac yourselves and might be interested in this?

Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
find quote
Gamester17 Offline
Team-XBMC Forum Moderator
Posts: 10,523
Joined: Sep 2003
Reputation: 10
Location: Sweden
Lightbulb   
Post: #2
PPC (PowerPC) emulators could possibly make porting easier for those developers who do not actually have PPC hardware:
http://en.wikipedia.org/wiki/Comparison_...l_machines

QEMU emulator looks most promising at a first glance(?) Confused
http://en.wikipedia.org/wiki/QEMU
http://bellard.org/qemu/
Quote:QEMU is an open source software simulator for x86 that can emulate systems with processors of various architectures, including 386, x86_64, ARM, MIPS, PowerPC and Sparc. For ARM, two emulated platforms are available -- an older "Integrator" platform, and a newly-added "Versatile" platform.

The new Versatile platform includes a SCSI hard disk controller, Ethernet card, and graphical display. According to french Debian developer Aurelien Jarno (who published a HOW-TO about installing Debian or another Linux distributions on the open-source QEMU emulator), when run on an Athlon 64 3800+, running under QEMU can perform 20 percent faster than the ARM-based LinkSys NSLU2 (an inexpensive network-attached storage appliance that is commonly pressed into service as a full Debian ARM development target).

Jarno's HOW-TO begins by describing how to download and install QEMU from CVS, to ensure that the latest Versatile platform support is included. He then configures QEMU to emulate a 10GB hard drive, and downloads a publicly shared Versatile kernel that he created (Debian ARM does not yet include a kernel that supports the image, he says). Next he downloads Debian's "Etch" installer, and bootstraps the installer using a qemu-system-arm command.

Jarno's HOW-TO next describes several harmless error messages, leading ultimately to the emulated ARM system's first boot. Jarno's HOW-TO completes the basic installation by installing a more complete kernel.

Jarno's HOW-TO goes on to explore a few more advanced topics, such as running an Xorg server, increasing the amount of RAM to the maximum supported size of 256MB, and setting up a network bridge to allow the emulated system access to the Internet. The HOW-TO closes with a list of additional resources.

The full HOW-TO can be found here (link) was first published in 2006

Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
find quote
araldor Offline
Junior Member
Posts: 9
Joined: May 2008
Reputation: 0
Post: #3
Is it possible to run powerpc OSX in QEMU?

I didn't turn up anything with a google search, but if it is, I'd try it out and see if this port looks feasible.

I'm not looking forward to the idea of software opengl rendering on an emulator.
find quote
overkill Offline
Junior Member
Posts: 2
Joined: Jun 2008
Reputation: 0
Post: #4
I have a g4 mac mini (and a g4 powerbook) standing around at home but currently no time to write patches by myself. But if someone is interested, I could set it up with either Linux or OS X, connect it to the Internet and allow access per VNC and SMB or even ssh. I used to work allot in setups like this and it works pretty good. Just edit the files per SMB and compile via VNC.
find quote
Geeba Offline
Posting Freak
Posts: 1,797
Joined: Sep 2006
Reputation: 0
Location: UK
Post: #5
Didn't PowerPC's end with the G5 in 2005? Apple having a change of heart with the RISC - CISC battle...
Making them roughly high end single core P4 power? Just asking as I had no luck running XBMC-Windows on a thrashed P4 HT 3.5Ghz machine of late.... 720p was a no no. Confused
find quote
woodvin Offline
Junior Member
Posts: 1
Joined: Jan 2009
Reputation: 0
Post: #6
Gamester17 Wrote:Development to port XBMC for Linux to PPC (PowerPC) have begun and source code patches for that is available, however these developers are only focusing on XBMC for Linux, not XBMC for Mac (and no one on Team-XBMC even own a PowerPC based Mac), thus outside/third-party developers are needed to port XBMC to PPC so that is can be compiled and run on all PowerPC based Mac's out there.

For more information please see these threads in the XBMC forum:
http://forum.xbmc.org/showthread.php?tid=34439
http://forum.xbmc.org/showthread.php?tid=32320
http://forum.xbmc.org/showthread.php?tid=35435

Are there any C++ programmers out there who owns a PPC Mac yourselves and might be interested in this?


Did you find developers yet? I'm relatively free and have a ppc mac-mini that's running 10.5
find quote
Gamester17 Offline
Team-XBMC Forum Moderator
Posts: 10,523
Joined: Sep 2003
Reputation: 10
Location: Sweden
Post: #7
woodvin Wrote:Did you find developers yet?
No developer has volunteered yet to port XBMC for Mac to PPC architecture. Sad

Patches to port XBMC for Mac to PPC architecture would be more than welcomed!:
http://wiki.xbmc.org/?title=Appendix_D:_...ment_Notes
http://wiki.xbmc.org/?title=XBMC_for_Mac...rt_project
http://xbmc.svn.sourceforge.net/viewvc/*...README.osx
http://wiki.xbmc.org/?title=HOW-TO_compi...ource_code

PS! An initial patch for porting XBMC for Linux to PPC has however been submitted, that patch might be of some use for any volunteer cross-platform porter:
http://trac.xbmc.org/ticket/5544
http://forum.xbmc.org/showthread.php?tid=34439
http://forum.xbmc.org/showthread.php?tid=32320

Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
find quote
jeremyhu Offline
Junior Member
Posts: 34
Joined: Jan 2009
Reputation: 0
Post: #8
I've got a G5 that I'm trying to get XBMC to work with...

Also, is there an easy way to switch from using the bundled libraries to using the ones already on the system (ffmpeg, libogg, libvorbis, liba52, etc, etc)... I'd like to trim down the 700mb-ish download and eliminate redundencies...
(This post was last modified: 2009-01-09 05:18 by jeremyhu.)
find quote
jmarshall Offline
Team-XBMC Developer
Posts: 26,221
Joined: Oct 2003
Reputation: 178
Post: #9
You're probably best to get some info from davilla or d4rk about this, but in the meantime:

The ones that we load as .so's need to be wrapped in order to interface with our virtual filesystem. Assuming you can still run the wrapping on existing system versions to create new ones to place in XBMC/system/ then you'll possibly be OK. Note that some libraries we modify (ffmpeg for instance).

Cheers,
Jonathan

Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


[Image: badge.gif]
find quote
davilla Offline
Retired-Team-XBMC Developer
Posts: 11,508
Joined: Feb 2008
Reputation: 64
Post: #10
jeremyhu Wrote:I've got a G5 that I'm trying to get XBMC to work with...

Also, is there an easy way to switch from using the bundled libraries to using the ones already on the system (ffmpeg, libogg, libvorbis, liba52, etc, etc)... I'd like to trim down the 700mb-ish download and eliminate redundencies...

ffmpeg is built from ffmpeg svn source + xbmc patches. It's a static lib linked at compile.

most of the others involve source + xbmc patches or wrapping. The wrapping is a critical step that's needed to replace file i/o routine names with xbmc names. That way we can pass URL refs to libs that normally cannot handle them. Wrapping is also know as function interposing. There are plans to move this from static wrapping to dynamic wrapping. This way we can use more standard libs that already exist on OSX and do the wrapping at runtime.


MediaInfo : http://mediainfo.sourceforge.net/
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
find quote
cptvitamin Offline
Junior Member
Posts: 4
Joined: Oct 2008
Reputation: 0
Post: #11
I'm not a developer, but would love to test. I have a dual core 2.3ghz G5 with Ubuntu on it. My current XBMC box is old and dying and I would love to use the G5 for XBMC.
find quote
davilla Offline
Retired-Team-XBMC Developer
Posts: 11,508
Joined: Feb 2008
Reputation: 64
Post: #12
Sorry to disappoint but until someone actually works on porting XBMC for Mac to PPC, there's nothing to test.

My fastest PPC box is an 800MHz 12" iBook and XBMC for Mac is going to be a real dog on that. As my AppleTVs are much faster that that iBook, I don't have any real interest in doing the port. I will however keep it in mind as I mess with the make/Xcode project.


MediaInfo : http://mediainfo.sourceforge.net/
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
find quote
Beenje Offline
Team-XBMC Developer
Posts: 299
Joined: Feb 2009
Reputation: 3
Location: Sweden
Post: #13
I'm interested in trying to port XBMC for Mac to PPC.
I have a PowerBook and Mac mini G4.
But I'm not a real C++ developer and probably gonna need some help.

Actually, inspired by the patch for Linux to PPC, I managed to compile XBMC on my PowerBook this week-end. But the executable crashes when trying to create the main application window...
A backtrace can be seen here: http://pastebin.com/m5626dea2

I'm a bit stuck. Does anyone would like to help and have any idea what could be wrong?

Thanks
find quote
davilla Offline
Retired-Team-XBMC Developer
Posts: 11,508
Joined: Feb 2008
Reputation: 64
Post: #14
Beenje Wrote:I'm interested in trying to port XBMC for Mac to PPC.
I have a PowerBook and Mac mini G4.
But I'm not a real C++ developer and probably gonna need some help.

Actually, inspired by the patch for Linux to PPC, I managed to compile XBMC on my PowerBook this week-end. But the executable crashes when trying to create the main application window...
A backtrace can be seen here: http://pastebin.com/m5626dea2

I'm a bit stuck. Does anyone would like to help and have any idea what could be wrong?

Thanks

looks like NSOpenGLContext initWithFormat:shareContext jumped off the end of the world.

regarding porting, just getting the Xcode project to compile is not enough. You will have to fix up all the external codec/libs to also compile.

I'd start with SDL as those are static libs that are required.


MediaInfo : http://mediainfo.sourceforge.net/
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
find quote
Beenje Offline
Team-XBMC Developer
Posts: 299
Joined: Feb 2009
Reputation: 3
Location: Sweden
Post: #15
Compiling all the external codec/libs was of course one the first thing I did (including the static libs like SDL - I renamed them lib*-powerpc-osx.a).
I first compiled everything in command line. I created the ARCH=powerpc-osx.
When my exe crashed, I compiled using Xcode because I think it would be easier to debug from there.
Btw I saw that Xcode uses libcdio-osx.a whereas in command line it does not use this static lib (it is compiled).

Is there any specific flag I should use to compile SDL on PPC?
I used the script buildSDL-osx.sh. Should I use --disable-altivec? (I saw --disable-nasm is used for x86).
find quote
Post Reply