macOS で Hello World コンソール アプリケーションを構築する
MacOS アプリケーション開発 への移動
この "Hello World" チュートリアルでは、Delphi でマルチデバイス アプリケーションを作成する場合に不可欠な手順を示しています。 このアプリケーションは、macOS プラットフォーム(Mac)、コンソール ウィンドウ、およびイベントをターゲットとし、ユーザーの操作に応答するダイアログ ボックスを表示します。
目次
前提条件
「macOS 用の開発環境のセットアップ」を参照してください。
手順
macOS の "Hello World" コンソール アプリケーションを作成するには:
PC を Mac に接続する
「Mac と PC を連携させる」を参照してください。
ターゲットの macOS でプラットフォーム アシスタントを実行する
- プラットフォーム アシスタントは、開発 PC とターゲットの Mac の両方で動作している必要があります:
- プラットフォーム アシスタントが PC と Mac にインストール済みの場合、次のステップへ。
- プラットフォーム アシスタントが PC と Mac にインストールされていない場合、ターゲット マシンにプラットフォーム アシスタントをインストールします。 次のインストーラが PC や Mac で実行するために利用できます:
- ターゲットの Mac にインストールするには、
RADPAServerXE4.pkg
を使用。 手順については、「Mac でのプラットフォーム アシスタントのインストール」を参照。 - PC にインストールするには、
setup_paserver.exe
を使用。 手順については、「Windows でのプラットフォーム アシスタントのインストール」を参照。
- ターゲットの Mac にインストールするには、
- メモ: paclient.exe(プラットフォーム アシスタント クライアント アプリケーション)は、RAD Studio のインストール時に開発用システムにインストールされます。
- Mac で ターミナル ウィンドウを開きます。
- プラットフォーム アシスタント(PAServer)があるディレクトリに、ディレクトリを変更します(
cd
)。 - 次のように入力し、プラットフォーム アシスタントを実行します:
./paserver
- パスワード設定画面が表示されたら、パスワード文字列を入力します(任意)。 これは、プラットフォーム アシスタントのこのインスタンスに接続する接続プロファイルから要求されるパスワードです。 パスワードを設定しない場合は、Enter を押します。
- プラットフォーム アシスタントに、サインインのメッセージとコマンド プロンプト(>)が表示されます。
プラットフォーム アシスタント サーバーの接続プロファイルを作成する
- [ツール|オプション...|環境オプション|接続プロファイル マネージャ]を選択します。
- [追加]をクリックします。 [接続プロファイルの作成]ウィザードが開きます。
- ウィザードの1ページ目([プロファイル情報])で:
- [プロファイル名]に、接続プロファイルの名前を入力
- [プラットフォーム]で、プラットフォーム アシスタント サーバーが実行するプラットフォームを選択。今回は macOS 64 ビット(Intel)または macOS 64 ビット(ARM)。
- [次へ >>]をクリック。
- ウィザードの2ページ目([リモート マシン情報])で:
- [リモート マシン(IP アドレスまたはマシン名)]で、リモート マシン(Mac)の名前 IP アドレスを入力。
- リモート マシンの IP アドレスを判別するには、次のコマンドのいずれかを使用:
i
(Mac の PAServer コンソールの場合)ifconfig
(Mac のターミナル ウィンドウの場合)
- リモート マシンの IP アドレスを判別するには、次のコマンドのいずれかを使用:
- [ポート番号]はデフォルトの 64211 のままで。
- [パスワード]フィールドでは、接続するプラットフォーム アシスタントを起動した際に設定した、パスワード文字列を入力(任意)。 パスワード ファイル(*.passfile、paserver を使用して作成され、他のユーザーと共有の暗号化パスワードを含む)を検索するには、参照([...])をクリックします。 プラットフォーム アシスタントにパスワードが設定されていない場合には、このフィールドは空のままにします。
- [接続テスト]をクリック。
- 接続に失敗した場合、ターゲット マシン名や IP アドレスを確認し(
cmd
ウィンドウで ping を実行)、
- 接続に失敗した場合、ターゲット マシン名や IP アドレスを確認し(
- [リモート マシン(IP アドレスまたはマシン名)]で、リモート マシン(Mac)の名前 IP アドレスを入力。
プラットフォーム アシスタントがターゲット マシン上にインストールされ、実行中であることを確認します。
- 接続が成功したら、[次へ >>]をクリック(失敗の場合も同様)。
- メモ: ターゲットに接続できなかった場合でも、接続プロファイルを作成できます。 ただし、macOS アプリケーション開発の重要な時点(実行、デバッグ、配置時)で、有効な接続プロファイルが必要になります。
- [OK]をクリックし、[接続プロファイル マネージャ]ページを閉じます。
macOS ターゲットの SDK を追加する
- [ツール|オプション...|環境オプション|SDK マネージャ]を選択します。
- [追加]をクリックします。 [新規 SDK の追加]ダイアログ ボックスが開きます。
- [プラットフォームの選択]で、ターゲット プラットフォームを選択します(今回は macOS 64 ビット(Intel)または macOS 64 ビット(ARM))。
- [接続するプロファイルの選択]で、先ほど作成した接続プロファイルを選択します。
- [SDK バージョンの選択]で、[コマンドライン ツール]を選択します。
- コマンドライン ツール SDK は、macOS アプリケーションをビルドするための基本のヘッダーおよびライブラリを提供するもので、"Hello World" アプリケーションにはこれで十分です。 リスト中の他の SDK を選択しても、どれも コマンドライン ツール SDK のライブラリを提供しているため問題ありません。
- メモ: 使用可能な SDK のリストは、前のステップで選択した接続プロファイルを使って macOS システムから取得したものです。 コンボ ボックスが空であったり特定の SDK が含まれていない場合には、「macOS または iOS デバイス用 SDK の追加」を参照して対応してください。
- [OK]をクリックし、[SDK マネージャ]ページを閉じます。
指定された SDK のファイル(ヘッダーおよびライブラリ))は、Mac から開発用 PC に取り込まれます。 さらにライブラリやフレームワークをインクルードする場合には、[リモート パス項目の追加]または[リモート パス項目の編集]を参照してください。
macOS ターゲットのコンソール アプリケーションを作成し構成する
- [ファイル|新規作成|その他...]を選択します。 [新規作成]ダイアログ ボックスが表示されます。
- [Delphi プロジェクト]または [<CBuilder> プロジェクト]を選択し、[コンソール アプリケーション]をダブルクリックします。
- [新規コンソール アプリケーション(C++)] ダイアログ ボックスで、[コンソール アプリケーション]がオンであること、[ターゲット フレームワーク]が なし に、[マルチスレッド] にオフになっていることを確認します。 その後、[OK]をクリックします。
- プロジェクト マネージャで、ターゲット プラットフォーム ノードを右クリックし、[プラットフォームの追加]をクリックします:
- [プラットフォームの選択]ダイアログボックスで、macOS 64 ビット(Intel) または macOS 64 ビット(ARM)を選択し、[選択したプラットフォームをアクティブにする]チェックボックスをオンにし、[OK]をクリックします:
- SDK と接続プロファイルを macOS ターゲットに関連付けます:
- macOS プラットフォームをプロジェクト マネージャで右クリックし、次のコンテキスト メニューを表示させます:
- コンテキスト メニューで、[プロパティ...]を選択します。 [プラットフォーム プロパティ]ダイアログ ボックスが開きます。
- [SDK(ソフトウェア開発キット)]フィールドで、この "Hello World" アプリケーションの SDK を選択します。
- [プロファイル]で、この "Hello World" アプリケーションのために作成した接続プロファイルを選択します。
- [OK]をクリックして、変更を保存します。
- macOS プラットフォームをプロジェクト マネージャで右クリックし、次のコンテキスト メニューを表示させます:
これで、プロファイル名が、プロジェクト マネージャの macOS プラットフォームの隣に表示されます。 アプリケーションが C++ の場合には、SDK 名も表示されます。
コードを記述する
コード エディタで、テンプレートから生成されたコードを修正します:
- C++ の場合のみ、他の
#include
指令の後に追加します:#include <iostream>
- hello を表示し、Enter キーを待機するコードを追加します。
- Delphi の場合、次の文を、try ブロック(except キーワードの前)に入力します:
Writeln('Hello, World!'); Readln;
- C++ の場合、次のコードを
return 0;
の行の前に入力します:std::cout << "Hello, World!" << std::endl; std::cin.ignore();
- Delphi の場合、次の文を、try ブロック(except キーワードの前)に入力します:
- アプリケーションに名前を付けて保存します([ファイル|上書き保存])。
macOS ターゲットでコンソール アプリケーションを実行する
- [実行|デバッガを使わずに実行]を選択します。
- RAD Studio が次を表示します: プロジェクトを配置するには、まずコンパイルする必要があります。 続行しますか? [はい]をクリックします。
- ターゲット マシンで、"Hello, World!" というメッセージがプラットフォーム アシスタントのプロンプト(デバッガからのメッセージの後)に表示されます。
ENTER
キーを押します。 コンソール アプリケーションが終了した後、プラットフォーム アシスタント サーバーによりコマンド プロンプト(>)が再表示されます。
アプリケーションをデバッグす
IDE でアプリケーションをデバッグするには、次の標準[実行]コマンドのいずれかを使用します。
- [実行|実行](F9)
- [実行|ステップ実行](F8)
- [実行|トレース実行](F7)
[プロセスの読み込み]または[プロセスにアタッチ]コマンドでデバッガを起動することもできます。
これらすべてのコマンドで、次のとおりに実行できます。
- 現在割り当てられているプロファイルに基づいて、必須ファイルをターゲット マシンに転送する。
- デバッグ モードでアプリケーションを実行する。
IDE の統合デバッガを使用して、macOS アプリケーションをデバッグすることは、統合デバッガでネイティブの Win32 アプリケーションをデバッグすることとほとんど同じです。
デバッガを開始する[実行]コマンドを使用してアプリケーションを実行すると([実行|実行]や[実行|ステップ実行]、[実行|トレース実行]など)、デバッガがアクセスできるようにするために Mac の管理者パスワードの入力画面が表示されることがあります。
関連項目
- macOS アプリケーション開発
- Mac と PC を連携させる
- マルチデバイス アプリケーションの開発
- [接続プロファイル マネージャ]ページ([ツール|オプション...]内)
- [接続プロファイルの作成]ウィザード
- [接続プロファイルの選択]ダイアログ ボックス
- [SDK マネージャ]ページ([ツール|オプション...]内)
- paserver、プラットフォーム アシスタント サーバー アプリケーション
- FireMonkey プラットフォームに必要な準備
- macOS Man Pages
- macOS Command Line 101