MacOSをアップしたくないけれど、JUCEが使いたいです。Xcodeもインストールしなければいけません。
旧バージョンのXcodeをインストールして、Projucerを入れてみよう!
XcodeでJUCEプラグインの開発をしたいと考え、自分のMac(OS X 10.14.6)にインストールしようとしたら、AppStoreでは最新版のインストールしかできず、OSのアップデートが求められました。DTM用とがメインなので、プラグインの関係でMojaveのまま利用していきたいと考えていたので、現段階でMojaveにインストールする方法を備忘録します。
こんな人の役に立つかも
・旧バージョンのMacOS XにXcodeをインストールしたい人
・JUCEを旧バージョンのMacOS Xで利用したい人
・MacOS XでJUCEプロジェクトをビルドしたい人
Xcodeのダウンロード
OSとXcodeのバージョンを以下のサイトで確認させていただきました。
https://qiita.com/thinkalot/items/1dfdba642906c1bf1fd2
どうやら、Mojaveでは11.3.1というのが対応していそうです。
Appleにログインしておき、次のURLにアクセスします。
https://developer.apple.com/download/more/
Xcode本体は7.3G、コマンドラインツールは220MBとそこそこのボリューム♪
展開したXcodeをアプリケーションフォルダに移動しました。
コマンドラインツールは、zipでダウンロードできるので、展開するとpkgが出てきます。これをダブルクリックしてインストールしました。
Projucerのダウンロードとテストアプリ
次のページからmac用のProjucerをダウンロードしました。
https://juce.com/get-juce/download
展開したProjucerのフォルダ「JUCE」を私は、ユーザーフォルダ直下に「JUCE_programing」という階層を作成して配置しました。(この配置は任意です。好きな場所にしてください。)
※programingのスペルが正しくはprogrammingでした^^;直すのが面倒だったので、おいおい時間あるときに直しますm__m
配置した「JUCE」フォルダの中の「Projucer」アプリをダブルクリックで起動します。
初回に、「JUCEフォルダ」と「modules」フォルダのパスの指定をたずねられますのでJUCEは先ほどの階層を指定、「modules」階層は以下の、JUCEの中の「modules」フォルダを指定しました。
次のように、Projucerでtestというプロジェクトを作成しました。
プロジェクトは以下のように、「JUCE_programing」階層に配置するようにしました。(ここは任意です。)
Projucerで作成したプロジェクトの右上のXcodeのマークをクリックしてIDEを開きます。
Xcodeのプロジェクトのツリーには、Sourceフォルダが存在していて、ここに、プログラミングする「MainComponent.h」や「MainComponent.cpp」ファイルが存在しています。
今回は、何もせず空のアプリをビルドして動作検証するので、コマンド+Rを押すか、左上の「▷」マークをクリックしてアプリをデバッグします。
次のように、何もないアプリのウィンドウが表示されました。無事、ビルドすることができました♪
生じた不具合
上記の手順では、順調に進んでいるのですが、初回のビルドでは、<JuceHeader.h>が見つからないような挙動で、エラーが出てうまくビルドできませんでした。
一度、XcodeとProjucerを終了して、作成したプロジェクトを削除しました。(FinderでJUCE_programingフォルダのプロジェクトフォルダをそのままゴミ箱に移して削除しました。)
そして、JUCEが提供しているアプリ例を読み込んでビルドしてみました。
このアプリは正常にビルドできました。
このビルドを行なって、再度new projectから、「test」というプロジェクトを作成したら、正常にビルドができました。
まとめ
DTMで利用するmacなので、できる限り、旧バージョンのプラグインも利用できるように、OSのアップグレードをためらっていました。このMacには過去にXcodeをインストールしていないので、AppStoreからでは最新バージョンのXcodeしかインストールできませんでした。今回の方法でDTM用のMacでJUCEアプリをビルドできるようになりました。これで、mac用のVSTも作成できそうです。
※JUCEは利用したいOSでビルドしないといけません。windowsでmac用のVSTがビルドできないなど。
これでLogicでもプラグインの検証ができるようになりました!