質問: 下記のように、コンパイラオプションによる事前定義マクロによって処理を分けたいです。 ``` #ifdef HOGE 処理1 #else 処理2 #endif ``` SPRESENSE IDEの場合どのように行えば良いのでしょうか。 SDKコンフィグの設定を見回したりしましたが、見つかりませんでした。 どなたかご教授お願いいたします。 ■環境 PC:Ubuntu 18.04.4 LTS SDK:v2.0.1 IDE:v1.2.0
回答: Sony Spresense SDKではオーソドックスなMakefileが使われているようです。 * Spresense SDK スタートガイド (IDE 版) * Spresense SDK スタートガイド (CLI 版) Makefileの一般的な記法はWeb上に豊富な情報源が多数あるので、そちらをあたってください。 `HOGE`という名前を持つCのマクロ定数シンボルを定義したい場合、Makefile内で`CFLAGS`に`-D`オプションを追加することで、Cコンパイラに渡します。 ``` CFLAGS += -DHOGE ```