17

I have an existing Delphi 2009 application. I saw with the new XE2 release that we can now build our Delphi application to Windows 32/64 and now Mac OS X! Thumbs up to 64 bits and for Mac OS X compilation...

How good is the Mac OS X compiler? What do we have to do to compile our applications to Mac OS X? Will it only work with the VCL components or it will convert third party components automatically? How do we handle OS API calls now?

AlexV
  • 22,658
  • 18
  • 85
  • 122
  • Not with XE2, try Lazarus, which supports a large VCL subset on OS X – Marco van de Voort Sep 07 '11 at 16:29
  • Lazarus has better compatibility indeed. And they improved the stability of the IDE. It looks like FPC can already compile for Mac osx 64. – Gabriel Apr 03 '14 at 12:31
  • [Update from 2019] I agree with David. It is 2019 and Firemonkey is still not mature enough. Porting from VCL to Firemonkey also hasn't got easier. All 3rd party libraries you find out there are still VCL-only compatible. I think for cross platform, Lazarus (FreePascal actually) did a way much better job with their CLX. Using CLX you are compatible with all OSs. No porting necessary (as in the case of VCL -> FMX). – Gabriel Apr 12 '19 at 07:38
  • Also see www.turbococoa.com and CrossVCL. They both have major drawbacks but you are one step closer from having your VCL app running on Mac. One of BIGBIG disadvantages is being locked with an (expensive) 3rd party framework which might anytime go out of the market (or not.... you never know). Well... Delphi will one day go out of the market. It kinda is already. In the 2019 StackOverflow survey Delphi is not mentioned anywhere! Not even it the top hated programming languages :) :) :) Delphi is already totally forgotten. https://insights.stackoverflow.com/survey/2019 – Gabriel Apr 12 '19 at 07:47

1 Answers1

25

The Mac OSX compiler is, at present, only 32 bit. A 64 bit version will be included in a future release.

As for the VCL, I'm afraid you are to be disappointed. The VCL is a Windows only framework and will remain so. The VCL is hugely reliant on the architecture of Windows. For cross-platform (Windows, OSX, iOS), the new framework being shipped with XE2 is called FireMonkey. Porting a large VCL app to FireMonkey is a significant task. There have been a lot of blog articles just recently discussing FireMonkey and a bit of websearch will lead you to them. I would warn you that FireMonkey is very different from the VCL.

This is brand new technology and so expect some teething troubles. It will take time for the framework to mature and for 3rd party vendors to get fully up-to-speed with it. At the moment, you should not be expecting to ship a GUI heavy app for Mac compiled with Delphi any time soon. What you should be doing is getting hold of XE2, learning about FireMonkey and planning a strategy for porting to FireMonkey.

David Heffernan
  • 601,492
  • 42
  • 1,072
  • 1,490
  • 1
    Yeah I thought it was too good to be true :) I hope FireMonkey is nice to work with... – AlexV Sep 08 '11 at 13:48