LoginSignup
0
0

More than 1 year has passed since last update.

Spresense SDKでコンフィグレーション情報を保存する方法

Posted at

Spresense SDKのコンフィグレーションを使いこなすためのTIPSです。

現在のコンフィグ設定を保存する

menuconfig等でコンフィグ設定を変更した結果は、spresense/nuttx/.configファイルに反映されます。いま現在のコンフィグ設定を保存しておきたい場合、mkdefconfig.pyツールを使用します。このツールは Kconfig システムのmake savedefconfig相当の処理を行ってくれます。

// カレントディレクトリは spresense/sdk にいる前提
$ ./tools/mkdefconfig.py hoge

mkdefconfig.pyの引数にhogeと指定すると、sdk/configs/hoge/defconfigというファイルを作成します。このファイルはsdk/configs/default/defconfigに書かれている情報を含むフルのコンフィグファイルになります。

別のコンフィグレーションを実行した後や、make distcleanを実行した後に、さきほど保存しておいたコンフィグ設定を復元するときは次のように実行します。

$ ./tools/config.py hoge

現在のコンフィグ設定を差分のdefconfigファイルとして保存する

$ ./tools/mkdefconfig.py examples/fuga

mkdefconfig.pyの引数にexamples/fugaのように指定すると、sdk/configs/examples/fuga/defconfigというファイルを作成します。このファイルは、sdk/configs/default/defconfigからの差分のコンフィグ情報だけが含まれたファイルになります。

さきほどと同様に、保存したコンフィグ情報を復元するときは次のように実行します。

$ ./tools/config.py examples/fuga

現在のコンフィグ設定に別のdefconfigを追加したい場合

さきほどの手順の応用編で、現在のコンフィグ設定を一時的に保存しておくことで、別のdefconfigを簡単に追加できるようになります。

例えば、いま現在のコンフィグ設定をキープしたまま、SDカードを有効にしたり、gpioコマンドを有効にしたり、他のサンプルexamples/alarmを追加したい場合、

$ ./tools/mkdefconfig.py -y hoge
$ ./tools/config.py hoge device/sdcard feature/gpiotool examples/alarm

mkdefconfig.py-yオプションは既存の設定ファイルを問答無用に上書きするオプションです。既存のファイルが存在していて、このオプションの指定が無いときは、上書きするかどうかを尋ねてきます。-yオプションを指定することで強制的に上書きします。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0