はじめに
ModdableSDKでプロジェクトをビルドするためにmcconfig
コマンドを利用します。しかし、生成されたファイルはカレントディレクトリには出力されません。
普段は生成されたファイルを見る必要が無いので知らなくても問題無いのですが、新しいターゲットデバイス(M5ほにゃほにゃの新作とか)や、電子部品のドライバーを作成している時に、自動生成されたヘッダなどを確認したくなります。
ツール内部の処理なので、将来変わる可能性は大いにありますが、2020/7/1時点での場所を書き留めておきます。
ModdableSDKを、ある程度は知っていないと必要が無い事なので、細かい説明は省きます。
どこなのか
windows 10環境で説明しますが、macOS 環境でも同じ位置関係です。
ModdableSDKをインストールしたディレクトリが、D:\Projects\moddable
の場合は、D:\Projects\moddable\build\tmp
以下にサブディレクトリが作成され、生成されたファイルが出力されます。
作成されるサブディレクトリの階層は、一定のルールに従って細かい階層に分かれますが、以下の通りです。
D:\Projects\moddable\build\tmp
|
+-<platform>
|
+-<subplatform>
|
+-[debug|release]
|
+-<カレントディレクトリ名>
|
+-生成された各種ファイル
例
mcconfig -m -d -p esp32
のようにSubplatform
が指定されなかった場合は、Subplatform
の階層は作成されずPlatform
の階層にdebug
やrelease
が作成されます。
カレントディレクトリがD:\projects\helloworld
として
D:\projects\helloworld> mcconfig -m -d -p esp32
ならば
D:\Projects\moddable\build\tmp\esp32\debug\helloworld
となります。
備考
末端が、カレントディレクトリ名の違いだけになるので、カレントディレクトリ名部分で別のプロジェクトと衝突を起こしますが、一時ファイルの置き場なので問題になることは少ないです。
複数の実装を検証するために、親ディレクトリだけ違う階層にしていたらファイルが混ざってよくわからないエラーに悩まされたくらいです。
今は、これらのtmp以下に生成されるファイルを、お掃除できるオプションがmcconfig
コマンドに追加されているので、何か変かなとおもったらお掃除しておくのもいいかな。
例のファイルをお掃除するなら-t clean
オプションを追加してmcconfig
を実行します。
D:\projects\helloworld> mcconfig -m -d -p esp32 -t clean