Microsoftは「Visual Studio Code」の新しい拡張機能「Makefile Tools」のプレビュー版を公開した。Makefileプロジェクトのビルドとデバッグを実行する際に役立つ。70以上の主要なMakefileプロジェクトをサポートしていることが特徴だ。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
Microsoftは2021年2月17日(米国時間)、ソースコードエディタ「Visual Studio Code」(以下、VS Code)の新しい拡張機能「Makefile Tools」のプレビュー版を公開した。
VS CodeでMakefileプロジェクトのビルドとデバッグを実行しやすくなる。Makefile Tools拡張機能はパイロット段階にあるものの、公開時点でこの拡張機能を利用できるポピュラーなオープンソースMakefileプロジェクトが70以上あるという。
Makefile Tools拡張機能をインストールするには、Visual Studio Marketplaceを利用すればよい。
拡張機能のインストール後、プロジェクトのルートフォルダにMakefileを置くと、アクティベートされる。プロジェクトのMakefileがルートフォルダにない場合は、「Makefile Path」設定を使って、Makefileの場所を指定する。
Makefile Pathを更新するには、[ファイル]−[ユーザー設定]−[設定]の順にクリックし、[拡張機能]の[makefile]を選択する。
Makefile Pathを更新後、コマンドパレットに「makefile」と入力すると、Makefile Toolsコマンドが起動し、拡張機能がアクティブになる。
今回の拡張機能は既定動作として、$PATHで指定されたパスにあるmakeプログラムを使って、プロジェクトを構成しようとする。make.exeのパスが$PATHにない場合は、Make Path設定を更新する。[ファイル]−[ユーザー設定]−[設定]の順にクリックし、[拡張機能]の[makefile]を選択すればよい。Makefile Tools拡張機能は、Make Path設定からmake.exeのパスを取得する。
make.exeのパスを適切に設定したら、下図のように、Makefile ToolsでIntelliSenseの設定を許可する。
上図のような通知が表示されなかった場合や、表示をうっかり消してしまった場合は、コマンドパレットから[C/C++: Change Configuration Provider]を実行し、[Makefile Tools]を選択すればよい。
これでプロジェクトを構成する準備が整った。普段、コマンドラインから何も引数を渡さずにmakeを実行している場合は、他に設定すべきことはない。
makeに引数を常に渡す場合は、Makefile ToolsのConfigurations設定(settings.jsonのmakefile.configurations)を使って、引数を指定する。makefile.configurationsは、構成オブジェクトの配列であり、それぞれが名前と、makeに渡す引数を保持するmakeArgsプロパティを持つ。
Microsoftは、70以上のポピュラーなオープンソースリポジトリについて、適切な構成を文書化している。例えば、“PROJECT=armemu-test”をmakeに渡す必要があるlittlekernelの構成を作成する場合、settings.jsonの内容は次のようになる。
"makefile.configurations": [ { "name": "littlekernel", "makeArgs": ["PROJECT=armemu-test"] } ]
プロジェクトの構成を選択するには、次の図の左端にある赤枠で囲ったエクスプローラーメニューでMakefile Toolsアイコンを選択すればよい。
[Configuration]の上に移動した後、赤枠で囲ったペンシルアイコンを選択してプロジェクトの構成を選択する。
makefile.configurationsで構成を定義しなかった場合には、拡張機能が既定の構成を自動的に選択する。
プロジェクトを構成したら、ビルドが可能になる。[Build target]の上に移動し、赤枠で囲ったペンシルアイコンを選択すればよい。
プロジェクトのMakefileの中で見つかったターゲットリストの中からターゲットを選択する。
ビルドターゲットを設定後、赤枠で囲ったビルドアイコンをクリックする。
プログラムを実行したり、デバッグしたりするには、下図の赤枠で囲ったペンシルアイコンを使って起動ターゲットを選択すればよい。すると選択したターゲットの構成がmakefile.launchConfigurations設定に追加される。
ターゲットにMIModeやmiDebuggerPath、stopAtEntryのような追加の引数を渡す必要がある場合は、makefile.launchConfigurations内のターゲットの構成にbinaryArgsプロパティを追加する。
起動ターゲットを設定したら、赤枠で囲ったデバッグアイコンを選択し、デバッグセッションを開始する。
デバッグをしないでプログラムを実行するには、「Run in Terminal」(ターミナルで実行)ボタンを選択すればよい。
コマンドパレットを開き、「makefile」と入力すると、全てのMakefile Tools関連のコマンドを一覧表示できる。ビルドターゲットを変更しなくても実行できるコマンドもある。
[ファイル]−[ユーザー設定]−[設定]の順にクリックし、[拡張機能]の[makefile]を選択すると、全てのMakefile Tools設定を表示できる。最もよく使いそうなものとして、次のような設定がある。
Copyright © ITmedia, Inc. All Rights Reserved.