Delphi 2011 がリリースされ、Delphi XE と呼ばれています。以前のバージョンの Delphi と同様に、32 ビット Windows のみをサポートします。64 ビット、OS X、および Linux はロードマップに残ります。
Delphi が実際にクロスプラットフォームをサポートするまで、クロスプラットフォームの Windows と OS X を実行することがどれほど簡単になるかを言うことは不可能です。しかし、廃止された Linux バージョンの Delphi である Kylix に基づいて、いくつかの推測を行うことができます。
Kylix は、CLX と呼ばれる新しいコンポーネント ライブラリを導入しました。CLX は VCL に非常に似ていましたが、同一ではありませんでした。CLX は、Windows と Linux の両方で利用できました。VCL は、Windows 専用アプリケーション用にまだ含まれていました。VCL アプリを CLX に移植することは、少なくともすべてのサードパーティ コンポーネントが CLX をサポートしていれば、それほど難しくありませんでした。最も困難な部分は、Win32 API を直接呼び出す独自のコードの部分を移植することでした。
私を含む何人かは、Windows では VCL を、Linux では CLX を使用していました。これにより、Windows 用と Linux 用の 2 組のフォームが必要になるため、作業が少し難しくなりました。これを成功させるには、非ビジュアル コードをフォームからできるだけ分離する必要がありました。たとえば、アプリの VCL バージョンと CLX バージョンで共有されるデータ モジュールに TActionList を置き、アクション リストを使用するツールバーなどを提供するフォームの VCL バージョンと CLX バージョンを分けます。将来的に複数のプラットフォームをサポートすることを検討している場合は、できるだけ多くのコードをフォームに関連付けられていない単位に分割することで、今すぐ準備できます。
Delphi はネイティブ アプリケーションの作成を目的としているため、Java のように「一度コンパイルすればどこでも実行できる」ということはありません。代わりに、Embarcadero がロードマップに従っていると仮定して、「開発したら、多くの場所をコンパイルする」ようにします。