Which Delphi version should I use?

674 Views Asked by At

I'm starting a new project, and I want to use Delphi for the desktop GUI. I'll be doing mainly typical client/server stuff with it (probably with Firebird). I have Delphi XE6 pro, and the older versions that came with it. And these are some of my somewhat flexible requirements:

  1. The app should work on Linux and OSX, by running on top of Wine. (This was confusing, so I reworded it)
  2. The app should work on Windows XP.
  3. I'm thinking I'll use the open source VirtualTreeView and Turbopower GUI components. Or I may consider an older version of Devex that I have, that officially works with XE, but may (I don't know) unofficially work on a later version?

This project won't generate income right away, so I'd rather not buy a newer version of Devex (I'm currently waiting for some new work to start up, but there's no guarantee it actually will). Also, I read that XE6 will work with XP, even though it's not officially supported: http://blog.marcocantu.com/blog/2014_april_xe6avaialble.html But I'm still not comfortable with the idea, since Embarcadero didn't actually test it. And 3rd party support could also be a problem.

1

There are 1 best solutions below

6
On BEST ANSWER

What your question boils down to is whether or not the latest versions create executables that run on XP, and then on your targeted Wine versions.

Mostly that depends on what functions you call. If you call functions that aren't present in XP, then your program won't run on XP.

A plain vanilla VCL app from XE7 will run on XP. It's what you do then that counts. Simply, you'll have to take care, and test plenty.

My large app still runs on XP and is built with XE7. So it's perfectly possible. As Marco said in his comment, Embarcadero are not yet actively changing the VCL so that it breaks on XP. But they no longer test on XP.

Personally I'd sooner use the later versions so that I had access to generics. I know XE had generics, but the implementation was still a little buggy.