特にライブラリを作りながらスケッチも書いている場合、Arduino IDEでスケッチをコンパイルすると
undefined reference to `setup' や undefined reference to `loop' が出てエラーになることがある。どうやらスケッチをスケッチとして認識せずC++ソースとみなしてコンパイルしているような動作。

 以下は作業フォルダの例。

BYODというフォルダ以下に
BYOD.ino (Arduino IDEスケッチ)
BYOD.cpp (作成中のライブラリ)
BYOD.h (同上)

 このような構成のときにエラーがでる。スケッチのファイル名はフォルダ名と同じでなければならないので、次のようにリネームすると解決する。

BYODtestというフォルダ以下に
BYODtest.ino (Arduino IDEスケッチ)
BYOD.cpp (作成中のライブラリ)
BYOD.h (同上)

参考:
Arduino: undefined reference to `loop'



Arduinoをはじめよう 第3版 (Make:PROJECTS)Arduinoをはじめよう 第3版 (Make:PROJECTS)
Massimo Banzi Michael Shiloh 船田 巧

オライリージャパン 2015-11-28
売り上げランキング : 723

Amazonで詳しく見る
by G-Tools