• 1
  • 5
  • 6
  • 7(current)
  • 8
  • 9
Porting XBMC to Mac OS X (Leopard) - Developers only!
#91
xbmc.log

Quote:02:56:43 T:2693680992 M:813555712 NOTICE: Mapping drive Q to /Users/ezar/Documents/SVN/XBMC/BUILD
02:56:43 T:2693680992 M:813531136 NOTICE: -----------------------------------------------------------------------
02:56:43 T:2693680992 M:813531136 NOTICE: Starting XBoxMediaCenter. Built on Jan 2 2008
02:56:43 T:2693680992 M:813531136 NOTICE: Q is mapped to: /Users/ezar/Documents/SVN/XBMC/BUILD
02:56:43 T:2693680992 M:813531136 NOTICE: The executeable running is: 
02:56:43 T:2693680992 M:813531136 NOTICE: Log File is located:
02:56:43 T:2693680992 M:813531136 NOTICE: -----------------------------------------------------------------------
02:56:43 T:2693680992 M:813461504 NOTICE: Mapping drive T to /Users/ezar/Documents/SVN/XBMC/BUILD/UserData
02:56:43 T:2693680992 M:813461504 NOTICE: Setup SDL
02:56:43 T:2693680992 M:811372544 INFO: Available videomodes:
02:56:43 T:2693680992 M:811368448 INFO: Found mode: 1280x800
02:56:43 T:2693680992 M:811368448 INFO: Found mode: 1152x720
02:56:43 T:2693680992 M:811368448 INFO: Found mode: 1024x768
02:56:43 T:2693680992 M:811368448 INFO: Found mode: 1024x640
02:56:43 T:2693680992 M:811368448 INFO: Found mode: 800x600
02:56:43 T:2693680992 M:811368448 INFO: Found mode: 800x500
02:56:43 T:2693680992 M:808787968 INFO: GL: OpenGL Vendor String: Intel Inc.
02:56:43 T:2693680992 M:808779776 ERROR: LIRC Initialize: connect failed: No such file or directory
02:56:43 T:2693680992 M:808660992 NOTICE: Mapping drive Z to /tmp/xbmc
02:56:43 T:2693680992 M:808656896 INFO: Drives are mapped
02:56:43 T:2693680992 M:808656896 NOTICE: load settings...
02:56:43 T:2693680992 M:808652800 NOTICE: Mapping drive P to /Users/ezar/Documents/SVN/XBMC/BUILD/UserData
02:56:43 T:2693680992 M:808648704 NOTICE: loading /Users/ezar/Documents/SVN/XBMC/BUILD/UserData/guisettings.xml
02:56:43 T:2693680992 M:808476672 NOTICE: Getting hardware information now...
02:56:43 T:2693680992 M:808472576 INFO: Using analog output
02:56:43 T:2693680992 M:808472576 INFO: AC3 pass through is enabled
02:56:43 T:2693680992 M:808464384 INFO: DTS pass through is enabled
02:56:43 T:2693680992 M:808464384 NOTICE: Checking resolution 10
02:56:43 T:2693680992 M:808464384 NOTICE: Setting autoresolution mode 6
01:56:43 T:2693680992 M:808456192 NOTICE: Per AV pack settings are off
01:56:43 T:2693680992 M:808439808 NOTICE: /Users/ezar/Documents/SVN/XBMC/BUILD/UserData/sources.xml
01:56:43 T:2693680992 M:808435712 ERROR: Load Error loading /Users/ezar/Documents/SVN/XBMC/BUILD/UserData/sources.xml: Line 0, Failed to open file
01:56:43 T:2693680992 M:808378368 INFO: Checking skinpath existance, and existence of keymap.xml:Q:\skin...
01:56:43 T:2693680992 M:808378368 INFO: load language info file: /Users/ezar/Documents/SVN/XBMC/BUILD/language/English/langinfo.xml
01:56:43 T:2693680992 M:808366080 INFO: load keyboard layout configuration info file: /Users/ezar/Documents/SVN/XBMC/BUILD/language/English/keyboardmap.xml
01:56:43 T:2693680992 M:808366080 ERROR: unable to load /Users/ezar/Documents/SVN/XBMC/BUILD/language/English/keyboardmap.xml: Failed to open file at line 0
Reply
#92
Finally I test XBMC-OSX

I use only macports.org releases... For libsdl I modify portfile to use 1.2.13 (relased 12-30-2007)
I create a ticked to macports to include it!

More detail in user forum
Reply
#93
I think the easiest way to move forward on this problem (which is preventing video and photos from working) is to move to using SDL 1.3. This newer version supports the following calls:

SDL_GL_CreateContext
SDL_GL_MakeCurrent
SDL_GL_DeleteContext

Which should help in converting the GL code over to OS X. The main problem is that SDL/OS X actually uses Cocoa, so I can't use the AGL calls, which are deprecated and Carbon based. I could use CGL calls too, which are the basis of the higher level GL APIs on OS X.

(Of course, I'm writing this right now and I did all the research in the middle of the night when I couldn't sleep, so I may have dreamt most of it.)

Also, I have a basic Eclipse project working, which uses xcodebuild to do the actual building. Error parsing works fine, and that means that XCode and Eclipse development can proceed alongside each other, and we don't have to force anyone into using one or the other. Debugging is much better with Eclipse, at least for me.

The standard Makefile/CDT builders in Eclipse are some buggy crap, let me tell you, which is another reason I moved to simply invoking XCode's builder.

-elan
Reply
#94
Alright, I'm now using SDL 1.3, and got the basic OpenGL context stuff in there. It almost works, no more crashes, but now seemingly hitting a deadlock, and things are far from perfect. But at least it displayed the first image from a slideshow.

Image
Reply
#95
Thank you all for your efforts! This is awesome!
Reply
#96
elan Wrote:Alright, I'm now using SDL 1.3

Do you mean SDL 1.2.13? I can't find any reference to 1.3. :confused2:
Reply
#97
griffore Wrote:Do you mean SDL 1.2.13? I can't find any reference to 1.3. :confused2:

SDL 1.3 is here. There's been a lot of work done on OpenGL/OS X/Cocoa, but I'm not entirely convinced this is the right route to take. I may go back and hack 1.2.13 more.
Reply
#98
I'm basically back to a slightly hacked SDL 1.2.13 and using AGL calls in XBMC's CSurface. I can now create and manage AGL contexts fine, and now I'm running into a critical section issue that I was aware of when first porting, but now seems to be actually biting me when I go to display a photo Rolleyes

Hopefully I'll get a chance to work on this more later on today.

-elan
Reply
#99
I am curious how are either of you able to compile SDL with Leopard...I've tried with both SDL 1.2 and 1.3 and had make errors. Obviously neither fink nor macport support libSDL with 10.5.x just yet.

Is it possible to put online somewhere (if not in this discussion) where you got 1.2.13 and how you modified it ( I assume there where changes made to certain of the make files)?
Reply
gmackenz Wrote:I am curious how are either of you able to compile SDL with Leopard...I've tried with both SDL 1.2 and 1.3 and had make errors. Obviously neither fink nor macport support libSDL with 10.5.x just yet.

Is it possible to put online somewhere (if not in this discussion) where you got 1.2.13 and how you modified it ( I assume there where changes made to certain of the make files)?

Thanks to a kind soul who sent me a private message, I'd gotten so forgetful in my middle-aged-mindness that I need to configure/compile as root for Mac OS X...Been using Fink/Macports too much Wink

Better documentation/current work-arounds in the README.mac_os_x is always appreciated.
Reply
gmackenz Wrote:Better documentation/current work-arounds in the README.mac_os_x is always appreciated.

Yeah, next time I come up for air in my development work, I'll improve the documentation. The more people who are able to build it, the more people who are able to help out in the porting effort.

-elan
Reply
I ran a slideshow with music for 3 hours while I was out for dinner, and it worked perfectly. The key was getting the AGL contexts working, rewriting the critical section code to use standard pthread constructs, and hacking SDL 1.2 to return me the Carbon WindowRef.

I have one interesting display glitch (title bar is garbage), and I'm pretty sure it's because I'm using the top-level WindowRef instead of the subframe I should be using. I'm brand new to Carbon/Cocoa/Quartz/AGL coding, so hopefully you'll cut me some slack while I figure out how to fix it Big Grin

Image
Reply
Superb work, elan.

Are you planning to stick with Carbon/Eclipse at this point? I know that Apple has deprecated the Carbon and QuickDraw libs, and highly recommends that people move to a pure Cocoa environment. They also recommend using XCode because it will be easier to maintain the codebase going forward as things evolve. Less significantly but still something to note, under 10.5 Carbon apps have no support for 64-bit.

Of course, if you're feeling really crazy you can mix Cocoa into a Carbon app (http://developer.apple.com/documentation...tions.html) or vice versa.


Aside from the great Apple Developer (developer.apple.com) site, this is also a good resource for learning Cocoa:
http://cocoadevcentral.com/
Reply
petsounds Wrote:Are you planning to stick with Carbon/Eclipse at this point? I know that Apple has deprecated the Carbon and QuickDraw libs, and highly recommends that people move to a pure Cocoa environment. They also recommend using XCode because it will be easier to maintain the codebase going forward as things evolve. Less significantly but still something to note, under 10.5 Carbon apps have no support for 64-bit.

Thanks for your kind message.

In terms of Eclipse, I've configured it to call xcodebuild externally, so XCode manages the configuration. This seemed the best of both worlds, because Eclipse works fine, highlights errors, etc., and the debugging (for me, at least) works much better. The people who want to use XCode are set, and the people who want to use vi or emacs can use xcodebuild.

In terms of Carbon etc., XBMC is built on top of SDL, which in 1.2 is Cocoa/Quartz, and 1.3 seems to be just Cocoa (assuming I know what I'm talking about). In getting multiple OpenGL contexts to work, this first attempt uses AGL which needs access to a Carbon WindowRef.

Since I already have a tiny bit of Obj-C in XBMC, I could probably move to a pure Cocoa implementation, I just haven't been brave enough to do that yet. AGL seemed to provide the easiest way forward, although, to be fair, there is that graphical glitch in the titlebar which would probably be solved if I went to using Cocoa's OpenGL API.

-elan
Reply
Mmmmm, tasty, got ProjectM (which can read Milkdrop settings) mostly working.
Reply
  • 1
  • 5
  • 6
  • 7(current)
  • 8
  • 9

Logout Mark Read Team Forum Stats Members Help
Porting XBMC to Mac OS X (Leopard) - Developers only!3