RE: Cross-platform Cocoa?
RE: Cross-platform Cocoa?
- Subject: RE: Cross-platform Cocoa?
- From: "Joseph Graham" <email@hidden>
- Date: Wed, 29 Sep 2004 11:38:12 -0600
- Thread-topic: Cross-platform Cocoa?
Hello,
You might want to defer these discussions to the GNUStep-Discuss mailing
lists. They are very active and these issues are very common. There is
also a distribution specifically for windows and IIRC you can build
GNUStep apps on windows using MinGW. This is better than cygwin from a
dependency standpoint. They have been working on something called the
"Windows Back-End" that brings the GUI server stuff to windows. The
only "major" incompatibility between Cocoa and GNUStep applications are
the "Nib" files. This boils down to a difference in how objects are
serialized to a file stream. GNUStep uses a format called "Gorm" which
is not compatible with "Nib." To make matters worse, Apple has closed
the object serialization format for nib files and IIRC the GNUStep team
has no desire to reverse engineer it. Another problem with GNUStep is
that the GUI apps look like GNUStep apps and not windows applications.
This may or may not be a problem depending on your app. IMHO it would
be a problem for just about anyone for any application unless you really
want to have an oddball looking(at best) application.
Your other option is using the Project builder that comes with
WebObjects. IMHO, it is far more unstable than GNUStep but more forward
compatible with XCode and later versions of project builder. Mind you
that this is based on an older specification of the NextStep libraries
and is not "backwards" compatible with any Cocoa stuff. But you can
"convert" WO PB projects into XCode projects with little or no hassle.
The only gotcha with WO is that you cannot distribute WO PB applications
as commercial and perhaps even otherwise. Check the licensing if you
are seriously considering taking this route.
IMHO the best option in programming and designing _ANY_ application is
to take the correct approach first AND know the risks and weaknesses of
any approach you take. Granted Cocoa totally rules and I would not want
to dirty my hands with any other environment but for now that
environment only produces beautiful applications on OSX. GNUStep
produces stepish looking applications really well on Linux (for now).
Finally (for now) the best approach to produce native looking
applications and is free and liberally licensed is WxWindows (or
WxWidgets).
http://www.wxwidgets.org
Sadly you have to get out your caveman sticks and work in C++ and
produce ugly Win32(ish) code. IMHO C++ is a distant (inbred) cousin to
Objective-C and you can probably get some port started but it will not
look anything like Cocoa and all that great stuff you get for free in
AppKit you will have to figure on rolling some of it yourself. That's
the compromise and the benefit is that you will have "native" looking
apps that are cross-platform. Sadly you still have to compile them on
each platform etc..
-----Original Message-----
From: cocoa-dev-bounces+jgraham=email@hidden
[mailto:cocoa-dev-bounces+jgraham=email@hidden] On Behalf
Of James Bucanek
Sent: Wednesday, September 29, 2004 9:46 AM
To: cocoa List
Subject: Cross-platform Cocoa?
Greetings,
So I'm talking to a friend of mine last night, and he thinks my Cocoa
application would be a smash hit on Windows[1]. *sigh*
But it did get me to thinking. How much of Obj-C and the NextStep
framework is portable to Intel processors? It would really be nice to
maintain a single Obj-C code base with all of the business logic --
should I actually develop a brain tumor and decide to port it to
Windows.
I thought the Obj-C compiler was cross platform. So at the very least,
I could recompile the application and roll my own NS... objects (I don't
use that many -- the part of the application that I'd want to port has
no GUI and very little Mac-specific code).
I also thought that all of the NS... framework came from Next, which ran
on Intel processors originally. But I don't know if the current NS...
framework is available for Intel or is open source, nor do I know how
much it relies on Darwin.
Anyway, this is just idle speculation. I just thought I'd ask in case
anyone here has had experience doing/trying this.
Thanks,
James
[1] What well written Mac application *wouldn't* be smash hit on
Windows? Can you say iTunes?
--
James Bucanek <mailto:email@hidden>
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden