[備忘録]JUCEをCMakeとVSCodeで動かしたい〜CMakeビルド編〜
上の記事の続きです。VSCodeにCMake Toolsという拡張機能を入れるところまで来ました。ここからはJUCEのプロジェクトを作っていきます。
1. JUCEの導入
グローバルに導入する手法もあるらしいが、今回はプロジェクト単位ごとに入れていく方法で導入する。
プロジェクトのディレクトリにJUCEをgit cloneし、libs以下に格納しておく。
$ git clone https://github.com/juce-framework/JUCE --recursive
cloneが完了したので、ソースファイルのテンプレートを持ってくる。JUCE/examples/CMake以下に、AudioPlugin・ConsoleApp・GuiAppの3種類のテンプレートが用意されているためこちらを使う。今回はAudioPluginを使用。中身には2種類の.cpp/.hファイルとCMakeLists.txtが含まれる。Processorの方が信号処理に関するソースでEditorの方がUI関連のソースになる。このAudioPluginのフォルダごとプロジェクトファイルにコピーし、適当にsrcと名前をつけておく。
ディレクトリ構成
---/
|-src/
| |-CMakeLists.txt
| |-PluginEditor.cpp
| |-PluginEditor.h
| |-PluginProcessor.cpp
| |-PluginProcessor.h
|
|-libs/
| |-JUCE
|
|-CMakeLists.txt
2. CMakeの設定
最上位のCMakeLists.txtから編集する。ここではプロジェクトの基本的な情報を設定する。内容は以下の通りだが、JUCEとsrcのサブディレクトリを追加しているほかはCMakeの普通の設定と変わらない。
src内のCMakeLists.txtを編集する。こちらはテンプレートに必要情報が全て記述されているため、必要に応じてuncommentしていく。主に設定すべきは以下の3箇所
1. juce_add_plugin
CMakeのadd_executableやadd_libraryなどに相当。Pluginのターゲットをこの関数で作る。基本的な設定は全てここに記述する
2. juce_generate_juce_header
JuceHeader.hを自動生成するための関数。このヘッダをインクルードすることでJUCE関連の関数はすべて使えるようになる。構成時にbuildディレクトリ内に生成される。
3. target_link_libraries
JUCE標準のライブラリをリンクできるように指定。
どれを使用するのか、いまいち分からないのでとりあえず全部指定。
以上でビルドすれば、/build/src/AudioPluginExample_artefacts/Debug配下に生成物が格納される。
参考
以下の記事を参考にしました。
この記事が気に入ったらサポートをしてみませんか?