Click here to Skip to main content
15,896,467 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
See more:
how can i make mac software on a windows PC? ofr example, how would I make a ipod touch app on a windows PC?
Posted
Updated 11-Oct-11 16:26pm
v2

1 solution

On Windows? Pretty unusual activity.

I can tell you how I do it. I never tried iPod, but develop for Mac OS X. I install Mono on Mac OS X. See http://en.wikipedia.org/wiki/Mono_%28software%29[^].

Then I develop .NET applications on Windows, using standard libraries and some of non-standard ones, such as System.Windows.Forms which have very good compatibility with Mono.

Such applications work on Mono without recompilation.

Unlike Linux, such applications for Mono do not behave like quite good citizens on Mono. So, some Mac-specific development may be required. There is a very depending binding library providing binding between Mono, Objective-C (http://en.wikipedia.org/wiki/Objective-C[^]) and Mac OS X library, notably Cocoa API (http://en.wikipedia.org/wiki/Cocoa_%28API%29[^]). This binding library is called Monobjc, see http://en.wikipedia.org/wiki/Monobjc[^]. It allowed for pure Max OS X development, but such application won't run on Windows even under Mono, well, quite naturally. However, they can be developed and compiled on Windows, in somewhat blind-folded mode.

Also, applications developed with Monobjc cannot run under Mono directly. Executable file should be run as a command-line parameter to the Monobjc runtime system, which works like a Max OS X application.

Reportedly, iPad development is also supported, I never tried.

One important aspect of Max OS X programming is creation of application bundle, http://en.wikipedia.org/wiki/Application_bundle#Mac_OS_X_application_bundles[^]. This is the way to run application on click at the item using Finder or a compatible file manager; see http://en.wikipedia.org/wiki/Finder_%28software%29[^].

I must say, this activity is pretty much exotic, and information on Internet is very limited, which makes development a certain problem for not very experienced developers. At the same time, it's quite doable.

—SA
 
Share this answer
 
v3

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900