Carbon or not?

Joined
Apr 2, 2009
Messages
6
Reaction score
0
Points
1
As some of you may know from my other semi-related thread, I'm a Windows developer and I've set out to port my commercial Windows program to Mac OS X. It's entirely written in C, and the overwhelming majority of the code is platform independent, and using a bunch of open source libraries for that (SDL, Allegro, DevIL, libsndfile, libmpg123..). The problem I'm facing is knowing what to replace the few Windows API calls with, and how to deal with the aspects unique to Mac OS X, e.g. the menus.

The Windows API calls consist in pretty simple stuff, such as a function to pop up an Open dialog, same for a Save dialog, a function to detect how many CPU cores we have (that one's probably in POSIX), a function to copy an image to clipboard.. My program being entirely in C, according to what I've recently read, I should aim to replace my WinAPI calls with Carbon API calls, correct? But here's the problem, I've also read that apparently Carbon is already old and being pushed out, that "it is not a good idea to write new applications using Carbon", and that you can't even build 64-bit apps with it.. Doesn't sound any good to start porting to it against all recommendations..

But on the other hand, what other choice is there? Surely a pure C program can't use Cocoa? What else is there? Or is Carbon a decent choice for the little I need?
 
Joined
Jun 25, 2005
Messages
3,231
Reaction score
112
Points
63
Location
On the road
Your Mac's Specs
2011 MBP, i7, 16GB RAM, MBP 2.16Ghz Core Duo, 2GB ram, Dual 867Mhz MDD, 1.75GB ram, ATI 9800 Pro vid
You'll definitely get great answers from the Apple developer forums.

Sounds like you have some code separation between the underlying C code and your GUI presentation code. Given that, I think you'll find using XCode and Interface Builder a fine solution which is also the long term solution. Apple has effectively announced the death of Carbon.

There is one blog out there by a guy who compares Windows and Cocoa coding & ideas. Unfortunately, for the life of me, I can' remember it. It is something I run a cross via other sites linking to it.
 
Joined
Jun 25, 2005
Messages
3,231
Reaction score
112
Points
63
Location
On the road
Your Mac's Specs
2011 MBP, i7, 16GB RAM, MBP 2.16Ghz Core Duo, 2GB ram, Dual 867Mhz MDD, 1.75GB ram, ATI 9800 Pro vid

Shop Amazon


Shop for your Apple, Mac, iPhone and other computer products on Amazon.
We are a participant in the Amazon Services LLC Associates Program, an affiliate program designed to provide a means for us to earn fees by linking to Amazon and affiliated sites.
Top