Ini aneh, entah terjadi karena apa (saya kurang tahu persis), tiba-tiba IDE Arduino saya tidak bisa mengcompile sketch. Walah ini gawat, kalau mengcompile saja gak bisa, mana mungkin bisa meng-upload sketchnya ke board Arduino. Ya toh?
Tampilan error yang terlihat pada jendela informasi IDE Arduino adalah sebagai berikut :
In file included from /usr/lib/gcc/avr/4.5.3/../../../avr/include/util/delay.h:44:0,
from /usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/delay.h:37,
from /home/matt/arduino-0022/hardware/arduino/cores/arduino/wiring_private.h:30,
from /home/insansains/arduino-0022/hardware/arduino/cores/arduino/WInterrupts.c:34:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/math.h:426:15: error: expected identifier or ‘(’ before ‘double’
/usr/lib/gcc/avr/4.5.3/../../../avr/include/math.h:426:15: error: expected ‘)’ before ‘>=’ token
Alhamdulillah, setelah searching nemulah link ini. Solusinya adalah dengan mengedit file arduino00xx/hardware/arduino/cores/arduino/wiring.h
Inget loh yah, file yang diedit wiring.h bukan extensi yang lain, apalagi file yang lain. Kemudian ganti perintah berikut :
#define round(x) ((x)>=0?(long)((x)+0.5):(long)((x)-0.5))
// #define round(x) ((x)>=0?(long)((x)+0.5):(long)((x)-0.5))