Skip to content

Software Compile errors #2

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
timcoolguy opened this issue Sep 4, 2017 · 1 comment
Open

Software Compile errors #2

timcoolguy opened this issue Sep 4, 2017 · 1 comment

Comments

@timcoolguy
Copy link

timcoolguy commented Sep 4, 2017

Hi,

i am new to Arduino, but fairly conversant on programming. I have all my hardware set up to your specs. I downloaded and installed Arduino IDE 1.8.4 from the Arduino website last night.

I added your libraries to the ProgramFiles/Arduino/libraries folder. It had a problem with the Wire.h include. I changed it from what you had:
#include "../Wire/Wire.h
to:
#include <Wire.h>
then that compile error message went away. I suppose the IDE is now finding the Wire library somehow, or it would still say wire.h is not found.

I open and compile Grind_Timer_1_1 This is the list of error messages.

===================================================================

Arduino: 1.8.4 (Windows 10), Board: "Arduino/Genuino Uno"

C:\Users\Tim\Desktop\SJ\src\Grinder_Timer_1_1\Grinder_Timer_1_1.ino: In function 'void setup()':

Grinder_Timer_1_1: 100: error: 'Init' was not declared in this scope

Init();

    ^

C:\Users\Tim\Desktop\SJ\src\Grinder_Timer_1_1\Grinder_Timer_1_1.ino: In function 'void loop()':

Grinder_Timer_1_1:125: error: 'Button_Led' was not declared in this scope

   Button_Led(false);

                   ^

Grinder_Timer_1_1:127: error: 'Grinder_Light' was not declared in this scope

   Grinder_Light(1); 

                  ^

Grinder_Timer_1_1:130: error: 'Encoder_Counter_Grinder_Time' was not declared in this scope

   Grinder_Run_Time_ms = Encoder_Counter_Grinder_Time();

                                                      ^

Grinder_Timer_1_1:133: error: 'Button' was not declared in this scope

   int TempButton = Button();

                           ^

Grinder_Timer_1_1:141: error: 'Save_Grinder_Run_Time_To_EEPROM' was not declared in this scope

     Save_Grinder_Run_Time_To_EEPROM(myEnc.read()); 

                                                 ^

Grinder_Timer_1_1:149: error: 'ClearOLED' was not declared in this scope

     ClearOLED();  

               ^

Grinder_Timer_1_1:170: error: 'Button_Led' was not declared in this scope

   Button_Led(true);

                  ^

Grinder_Timer_1_1:172: error: 'Grinder_Light' was not declared in this scope

   Grinder_Light(2);

                  ^

Grinder_Timer_1_1:174: error: 'CountDownBar' was not declared in this scope

   CountDownBar(Grinder_Run_Time_ms, true);

                                         ^

Grinder_Timer_1_1:180: error: 'UpdateLowerDisplay' was not declared in this scope

     UpdateLowerDisplay((Grinding_Started + (Grinder_Run_Time_ms)-millis())/1000);

                                                                                ^

Grinder_Timer_1_1:194: error: 'UpdateLowerDisplayNOW' was not declared in this scope

     UpdateLowerDisplayNOW(Grinder_Run_Time_ms/1000);

                                                   ^

Grinder_Timer_1_1:197: error: 'ClearTopOLED' was not declared in this scope

     ClearTopOLED();

                  ^

Grinder_Timer_1_1:199: error: 'Save_Total_Run_Time_To_EEPROM' was not declared in this scope

     Save_Total_Run_Time_To_EEPROM(Total_Runtime);

                                                ^

Grinder_Timer_1_1:201: error: 'UpdateTotalRunTimeDisplay' was not declared in this scope

     UpdateTotalRunTimeDisplay (Total_Runtime);

                                             ^

Grinder_Timer_1_1:205: error: 'Button' was not declared in this scope

   if ( 1 == Button()){

                    ^

Grinder_Timer_1_1:217: error: 'ClearTopOLED' was not declared in this scope

       ClearTopOLED();

                    ^

Grinder_Timer_1_1:219: error: 'Save_Total_Run_Time_To_EEPROM' was not declared in this scope

       Save_Total_Run_Time_To_EEPROM(Total_Runtime);

                                                  ^

Grinder_Timer_1_1:221: error: 'UpdateTotalRunTimeDisplay' was not declared in this scope

       UpdateTotalRunTimeDisplay (Total_Runtime);

                                               ^

Grinder_Timer_1_1:226: error: 'UpdateLowerDisplayNOW' was not declared in this scope

       UpdateLowerDisplayNOW(timeLeft/1000);

                                          ^

Grinder_Timer_1_1:241: error: 'Save_Total_Run_Time_To_EEPROM' was not declared in this scope

       Save_Total_Run_Time_To_EEPROM(Total_Runtime);

                                                  ^

Grinder_Timer_1_1:281: error: 'UpdateLowerDisplayNOW' was not declared in this scope

       UpdateLowerDisplayNOW(timeLeft/1000);

                                          ^

Grinder_Timer_1_1:292: error: 'UpdateLowerDisplayNOW' was not declared in this scope

     UpdateLowerDisplayNOW(Grinder_Run_Time_ms/1000);

                                                   ^

Grinder_Timer_1_1:296: error: 'ClearTopOLED' was not declared in this scope

     ClearTopOLED();

                  ^

Grinder_Timer_1_1:298: error: 'Save_Total_Run_Time_To_EEPROM' was not declared in this scope

     Save_Total_Run_Time_To_EEPROM(Total_Runtime);

                                                ^

Grinder_Timer_1_1:300: error: 'UpdateTotalRunTimeDisplay' was not declared in this scope

     UpdateTotalRunTimeDisplay (Total_Runtime);

                                             ^

Grinder_Timer_1_1:309: error: 'Button' was not declared in this scope

   int TempButton = Button();

                           ^

Grinder_Timer_1_1:325: error: 'ClearOLED' was not declared in this scope

     ClearOLED();  

               ^

Grinder_Timer_1_1:366: error: 'UpdateLowerDisplayNOW' was not declared in this scope

     UpdateLowerDisplayNOW(Grinder_Run_Time_ms/1000);

                                                   ^

Grinder_Timer_1_1:370: error: 'ClearTopOLED' was not declared in this scope

     ClearTopOLED();

                  ^

Grinder_Timer_1_1:372: error: 'Save_Total_Run_Time_To_EEPROM' was not declared in this scope

     Save_Total_Run_Time_To_EEPROM(Total_Runtime);

                                                ^

Grinder_Timer_1_1:374: error: 'UpdateTotalRunTimeDisplay' was not declared in this scope

     UpdateTotalRunTimeDisplay (Total_Runtime);

                                             ^

Grinder_Timer_1_1:378: error: 'Button' was not declared in this scope

   if ( 1 == Button()){

                    ^

Grinder_Timer_1_1:392: error: 'Save_Total_Run_Time_To_EEPROM' was not declared in this scope

       Save_Total_Run_Time_To_EEPROM(Total_Runtime);

                                                  ^

Grinder_Timer_1_1:413: error: 'ClearOLED' was not declared in this scope

     ClearOLED();

               ^

Grinder_Timer_1_1:417: error: 'Button' was not declared in this scope

    Button();

           ^

Grinder_Timer_1_1:420: error: 'Button_HeartBeat' was not declared in this scope

    Button_HeartBeat();

                     ^

Grinder_Timer_1_1:422: error: 'Encoder_Counter_Grinder_Time' was not declared in this scope

    Grinder_Run_Time_ms = Encoder_Counter_Grinder_Time();

                                                       ^

Grinder_Timer_1_1:431: error: 'Start_Screen' was not declared in this scope

         Start_Screen();

                      ^

Grinder_Timer_1_1:455: error: 'Encoder_Mode' was not declared in this scope

  timerMode=Encoder_Mode(0,1);

                            ^

Grinder_Timer_1_1:465: error: 'ClearOLED' was not declared in this scope

     ClearOLED();

               ^

Grinder_Timer_1_1:473: error: 'ClearOLED' was not declared in this scope

     ClearOLED();

               ^

Grinder_Timer_1_1:474: error: 'Save_Menu_To_EEPROM' was not declared in this scope

     Save_Menu_To_EEPROM();

                         ^

Grinder_Timer_1_1:476: error: 'Start_Screen' was not declared in this scope

     Start_Screen();

                  ^

Grinder_Timer_1_1:498: error: 'UpdateLowerDisplayInt' was not declared in this scope

     UpdateLowerDisplayInt(ResumeResetTime);

                                          ^

Grinder_Timer_1_1:501: error: 'Encoder_Menu' was not declared in this scope

  ResumeResetTime=Encoder_Menu(0,100);

                                    ^

Grinder_Timer_1_1:511: error: 'ClearOLED' was not declared in this scope

     ClearOLED();

               ^

Grinder_Timer_1_1:520: error: 'ClearOLED' was not declared in this scope

     ClearOLED();

               ^

Grinder_Timer_1_1:521: error: 'Save_Menu_To_EEPROM' was not declared in this scope

     Save_Menu_To_EEPROM();

                         ^

Grinder_Timer_1_1:523: error: 'Start_Screen' was not declared in this scope

     Start_Screen();

                  ^

Grinder_Timer_1_1:545: error: 'UpdateLowerDisplayInt' was not declared in this scope

     UpdateLowerDisplayInt(sleepLightLevel);

                                          ^

Grinder_Timer_1_1:548: error: 'Encoder_Menu' was not declared in this scope

  sleepLightLevel=Encoder_Menu(0,100);

                                    ^

Grinder_Timer_1_1:558: error: 'ClearOLED' was not declared in this scope

     ClearOLED();

               ^

Grinder_Timer_1_1:567: error: 'ClearOLED' was not declared in this scope

     ClearOLED();

               ^

Grinder_Timer_1_1:568: error: 'Save_Menu_To_EEPROM' was not declared in this scope

     Save_Menu_To_EEPROM();

                         ^

Grinder_Timer_1_1:570: error: 'Start_Screen' was not declared in this scope

     Start_Screen();

                  ^

Grinder_Timer_1_1:590: error: 'UpdateLowerDisplayInt' was not declared in this scope

     UpdateLowerDisplayInt(minLightLevel);

                                        ^

Grinder_Timer_1_1:593: error: 'Encoder_Menu' was not declared in this scope

  minLightLevel=Encoder_Menu(0,100);

                                  ^

Grinder_Timer_1_1:603: error: 'ClearOLED' was not declared in this scope

     ClearOLED();

               ^

Grinder_Timer_1_1:612: error: 'ClearOLED' was not declared in this scope

     ClearOLED();

               ^

Grinder_Timer_1_1:613: error: 'Save_Menu_To_EEPROM' was not declared in this scope

     Save_Menu_To_EEPROM();

                         ^

Grinder_Timer_1_1:615: error: 'Start_Screen' was not declared in this scope

     Start_Screen();

                  ^

Grinder_Timer_1_1:634: error: 'UpdateLowerDisplayInt' was not declared in this scope

     UpdateLowerDisplayInt(maxLightLevel);

                                        ^

Grinder_Timer_1_1:637: error: 'Encoder_Menu' was not declared in this scope

  maxLightLevel=Encoder_Menu(0,100);

                                  ^

Grinder_Timer_1_1:647: error: 'ClearOLED' was not declared in this scope

     ClearOLED();

               ^

Grinder_Timer_1_1:655: error: 'ClearOLED' was not declared in this scope

     ClearOLED();

               ^

Grinder_Timer_1_1:656: error: 'Save_Menu_To_EEPROM' was not declared in this scope

     Save_Menu_To_EEPROM();

                         ^

Grinder_Timer_1_1:658: error: 'Start_Screen' was not declared in this scope

     Start_Screen();

                  ^

Grinder_Timer_1_1:680: error: 'UpdateLowerDisplayInt' was not declared in this scope

     UpdateLowerDisplayInt(screenSaverTime);

                                          ^

Grinder_Timer_1_1:683: error: 'Encoder_Menu' was not declared in this scope

  screenSaverTime=Encoder_Menu(0,240);

                                    ^

Grinder_Timer_1_1:693: error: 'ClearOLED' was not declared in this scope

     ClearOLED();

               ^

Grinder_Timer_1_1:701: error: 'ClearOLED' was not declared in this scope

     ClearOLED();

               ^

Grinder_Timer_1_1:702: error: 'Save_Menu_To_EEPROM' was not declared in this scope

     Save_Menu_To_EEPROM();

                         ^

Grinder_Timer_1_1:704: error: 'Start_Screen' was not declared in this scope

     Start_Screen();

                  ^

Grinder_Timer_1_1:734: error: 'Encoder_Reset' was not declared in this scope

  resetTotalTimer=Encoder_Reset(0,1);

                                   ^

Grinder_Timer_1_1:744: error: 'ClearOLED' was not declared in this scope

       ClearOLED();

                 ^

Grinder_Timer_1_1:752: error: 'ClearOLED' was not declared in this scope

       ClearOLED(); 

                 ^

Grinder_Timer_1_1:762: error: 'ClearOLED' was not declared in this scope

     ClearOLED();

               ^

Grinder_Timer_1_1:763: error: 'Save_Menu_To_EEPROM' was not declared in this scope

     Save_Menu_To_EEPROM();

                         ^

Grinder_Timer_1_1:765: error: 'Start_Screen' was not declared in this scope

     Start_Screen();

                  ^

Grinder_Timer_1_1:794: error: 'Encoder_Reset' was not declared in this scope

  resetTotalTimer=Encoder_Reset(0,1);

                                   ^

Grinder_Timer_1_1:804: error: 'ClearOLED' was not declared in this scope

     ClearOLED();

               ^

Grinder_Timer_1_1:805: error: 'Save_Menu_To_EEPROM' was not declared in this scope

     Save_Menu_To_EEPROM();

                         ^

Grinder_Timer_1_1:807: error: 'Save_Total_Run_Time_To_EEPROM' was not declared in this scope

     Save_Total_Run_Time_To_EEPROM(Total_Runtime);

                                                ^

Grinder_Timer_1_1:809: error: 'Start_Screen' was not declared in this scope

     Start_Screen();

                  ^

Grinder_Timer_1_1:817: error: 'ClearOLED' was not declared in this scope

       ClearOLED(); 

                 ^

Grinder_Timer_1_1:826: error: 'ClearOLED' was not declared in this scope

     ClearOLED();

               ^

Grinder_Timer_1_1:827: error: 'Save_Menu_To_EEPROM' was not declared in this scope

     Save_Menu_To_EEPROM();

                         ^

Grinder_Timer_1_1:829: error: 'Start_Screen' was not declared in this scope

     Start_Screen();

                  ^

exit status 1
'Init' was not declared in this scope

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.

===================================================================

I am so new to Arduino, what can i do to fix all this? any help would be very appreciated.

Thanks

Tim

@timcoolguy
Copy link
Author

I resolved the issue myself.

When Arduino opens any of those .ino files, it creates a new filefolder for them and moves the .ino to that new folder. The Grinder_Timer_1_1.ino file was looking for the other ino files but couldnt find them since they were all in different folders.

I moved them all to the same folder and then compiled. Successful!!

Thanks!

per1234 added a commit to per1234/arduino-grind-timer that referenced this issue Nov 4, 2017
The Arduino IDE requires that the sketch folder name matches the sketch file name. When you open a sketch that is in a folder with a mismatched name the Arduino IDE prompts the user and then moves the sketch file to an appropriately named folder. Unfortunately the Arduino IDE does not also move the other sketch files along with it. That causes the sketch to no longer compile as it requires all the other .ino files that were located in the src folder.

Closes Espressobar#2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant