My plot.

イントロクイズの話とか、プログラム関係の備忘録だったり。書きたいことを気が向いたときに書きます。

割れたリンゴ

Discord Audio Stream BotmacOSで動かす上でのとりあえずの手がかりを整理していく記事です。適宜追記していきます。私がmac環境持ってないので画像が少ないのは仕様です。各種動作確認も不十分です。全て自己責任でやってください。この記事に限った話ではないですが……。

ステレオミキサー関連の使い方については本項では扱いません。他のサイトなどを参考になさってください。

なので今回の一曲は最初に書きます。

本日の一曲

割れたリンゴ / 渡辺早季(CV:種田梨沙)

こんなんみんな好きやろ、って言われがちな曲。私もめちゃすき。

gradleなんやねん~実行まで

「gradleってなんやねん」ってずっと言ってたんですけど、動かすファイルを作れるモノ、って感じです。端から動く「実行ファイル」を配ってくれているわけではなく、あくまでソースコードから実行ファイルを作る必要があります。だからmacでやるときはgradleを使うわけですね。大変だぁ。

f:id:pgDora56:20210315144116p:plain
ダウンロード

なので、実行ファイルではなく、ソースコードをダウンロードする必要があります。緑色の「↓ Code」というやつをクリックして、 Download ZIP からソースコードを保存してやりましょう。保存の際にはおそらくファイル名が Discord-Audio-Stream-Bot-master.zip で保存されそうになります。ただこれだと後々めんどくさいので、後ろの-masterを消して、 Discord-Audio-Stream-Bot.zip という名前で保存してください(保存後に名前を変更してもOK)。

保存後展開しましょう。

展開したら、ターミナルから cd コマンドなどを用いて、展開した Discord-Audio-Stream-Bot フォルダに移動してください。この辺のコマンドはググれば無限に記事が出てくるので省略します。ターミナル コマンド とかで軽く学んでください。

ここまできたら後は公式サイトに載っているコマンドがそのまま使えるはずです。

詳解コマンド

公式サイトに載っているコマンドを転載して簡単に解説します。

brew install gradle

Homebrewというパッケージマネージャ(App StoreとかPlayストアみたいに、ソフトウェアがDLできるソフトみたいなイメージでいいです)を使って gradle というソフトを入れるよ、というコマンド。エラー吐いて brew がないよとか言われたら多分Homebrewがないので、インストールの仕方をググってインストールしてください。

gradle build

gradle を使って実行ファイルを作るよ、という意味。エラー吐いたらカレントディレクトリが違う可能性があるので、どのフォルダにいるのかちゃんと確認してください。

cd build/distributions

build/distributions に移動するよ、という意味。エラー吐いたら gradle build が正しく実行できていない可能性が高いので、これもやっぱりカレントディレクトリの確認をしてください。

tar -xvf Discord-Audio-Stream-Bot-1.0-SNAPSHOT.tar

Discord-Audio-Stream-Bot-1.0-SNAPSHOT.tar という圧縮ファイルを展開するよ、という意味。 .tar.zip みたいなもんです。

cd Discord-Audio-Stream-Bot-1.0-SNAPSHOT

Discord-Audio-Stream-Bot-1.0-SNAPSHOT に移動するよ、という意味。

DISCORD_AUDIO_STREAM_BOT_OPTS='-Djava.library.path="/usr/lib:../../../natives/mac/"' ./bin/Discord-Audio-Stream-Bot

ソフトを起動するよ、ってことですね。これが正しく実行できれば問題ないです。ここで出るエラーについては次項で詳しく。

起動時に出るエラー

以下2点が確認されています。これらが解決されれば、起動のためのコマンドはちゃんと動くと思われます。

Javaがないよ

No Java runtime present,requesting install.

とか言われたらJavaがないです。詳しいことは省きますが、動かすための基盤的なものをインストールする必要があります。

Java SE Development Kit 15 - Downloads | Oracle 日本

ここから macOS Installer を入手して、ウィザードに沿ってインストールを進めてください。Oracleさんすぐインストールの場所変えるので、おいおいリンクが切れるかもしれません。そのときは Oracle JDK インストール とかいい感じの単語でGoogle先生に頼って最新のページを探してください。

インストールが終わって、ターミナルで

java -version

として、バージョン情報が表示されたらOKです。

セキュリティの問題

macはいつぞやからセキュリティガッチガチになって、App Store以外からDLされたものを実行しようとするといちいち聞いてくるようです。

今回は Discord-Audio-Stream-Bot/natives/mac/ の中にある10数個のファイルすべてに許可を出す必要があるようです。これがめんどくさいのです。

一つずつやったほうがセキュリティ上の不安は少なく済みます。あるいは、一括で(今回のStream Bot以外のものも)実行可能とすることができます。セキュリティ的な不安は残ります。

この辺りはおまかせです。以下のサイトにどちらの方法も紹介されています。

Mac「開発元を検証できないため開けません」を解決する方法! App Storeからダウンロードされないアプリを実行しよう

総括

このソフトウェア自体がおそらくWindows環境しか持っていない制作者さんがWindowsユーザのために作ったソフトウェアです。

これは制作者さんが悪いのではなく、Javaというプログラミング言語が優秀な言語であることが原因になります。制作者が意図せずとも、他のOSでの使用が可能となるためです。このように複数のOSに対応していることをクロスプラットフォームと言ったりしますが、通常クロスプラットフォームアプリケーションの開発はある程度の面倒がつきまといます。特にAppleは独自のものを使いすぎなところがあるので……

それを意識せずともクロスプラットフォーム開発が可能となってしまう。これがJavaの優秀なところであり、今回のようにインストール手順が確立されていないときにプログラミングに慣れていない人にとってとっつきにくいものとなってしまう要因です。

ですので、macで使う方も、Windowsで使う方も、開発者さんには最大限の敬意を払って頂ければと思います。

また、このページで見つけていないエラーなどあればご報告頂ければ幸いです。追記等々致します。