あどぽっぽは百合ゲーをつくりたい。

〜初心者百合ゲー制作者の勉強・開発進捗ブログ〜

【Mac】dotnetコマンドを使えるようにするまでのメモ。

久しぶりの投稿になります。

dotnetコマンドがなかなか有効にならずどハマりしていたのでメモ。

環境

macOS Monterey 12.5

MacBook Pro (13-inch, M1, 2020)

.NET SDK x64 ver.6.0.400

デフォルトシェル zsh

前提

.NETをインストールしていましたが、ターミナルでコマンドdotnet new consoleを実行すると

zsh: command not found: dotnet

こちらが出てきてしまっていました。(他のdotnetコマンドも同様)

解決策

先に解決策を書いてしまいます。以下を実行することで解決しました。

1.以下のコマンドをターミナルで実行。

ln -s /usr/local/share/dotnet/x64/dotnet /usr/local/bin/

2.シェルを追加することでパスを通す

open ~/.zhsrc

を実行してシェルの設定ファイルを開き、ファイルに以下を追加。

export PATH="/usr/local/share/dotnet/x64/dotnet:$PATH"

最後に

source ~/.zshrc

をターミナルで実行してファイルの変更を反映させる。(忘れがち!)

これで解決しました。

1と2の手順は順番逆でも大丈夫かと思います。(というか逆の方が正しいか?)

解説のようなもの

1.シンボリックリンクの作成

解決策の1で実行したのは、シンボリックリンクと呼ばれるものの作成です。

シンボリックリンクとは、特定のファイルやディレクトリへの道筋となるいわゆるショートカットファイルです。

実際のdotnetファイルは/usr/local/share/dotnet/x64/dotnetにあり、そのショートカットを/usr/local/binに作成するという作業。

これによってdotnetのファイルにアクセスできるようにする、というわけだと思います…。

ただ、シンボリックリンクを作成するだけでは、まだdotnetコマンドは有効になりませんでした。

2.dotnetへのパスを通す

次に実行したのがdotnetコマンドが用意されているdotnetディレクトリへのパスを追加するという作業。

ただイマイチこの「パスを通す」という作業が理解できていません…。

先ほど作成したシンボリックリンクにアクセスできるよう、/usr/local/share/dotnet/x64/dotnetへのパスをまず通しておくという感じなのかなと思います。

とにかくこのパスが検索したところ色々と出てきました。

/usr/local/share/dotnetとか/usr/local/share/dotnet/dotnetとか。

多分ですが、dotnetコマンドを実行するためのdotnet.exeまでのパスを通すのが正解なのかもしれないです。

環境などによって違うかもしれないので、Finderからdotnetのファイルの場所を参照してみるのがいいと思います。

Finderを開いてメニューバーの「移動」から「フォルダへ移動」を選択し検索してみましょう。

結果

というわけで以上のように設定後

% dotnet new console

をターミナルで実行したところ、

無事プロジェクトファイルの作成に成功!!

これでやっとVSCode上で作っていけるーーー!!!

ここに至るまでマジで数日悩んでいました。

まだまだ原因を完璧に理解したわけではないので、ちゃんとわかったら追記します。

では今日はこの辺で。