Hello,
I am compiling a .ino for a project. When compiling it under Windows (IDE 1.6.13) it compiles successfully. When compiling it under Linux (1.8.1 and 1.6.13), I receive numerous errors related to missing definitions.
The solution - in normal C/C++ - is to create a function prototype or move the definition above the lines that use it. However, Arduino should preprocess sketch files so that this is done already. And, as noted, the same version of the IDE does not have the error when run under Windows.
There's a number of posts on the forum asking questions about the same subject. They may be this same issue. Is it platform specific? Will it be fixed?
Reference: function not declared in scope - Syntax & Programs - Arduino Forum