What to check if compiler throws unclear error

Hi,

my program has become fairly complex, meaning several .h and .cpp files .

Now it won’t compile anymore and the compiler does not give me a clear error.

I am getting this output:

uilding cpp file: src/systemStatus.cpp
Invoking: ARM GCC CPP Compiler
mkdir -p ../build/target/user/platform-6-msrc/
arm-none-eabi-gcc -DSTM32_DEVICE -DSTM32F2XX -DPLATFORM_THREADING=1 -DPLATFORM_ID=6 -DPLATFORM_NAME=photon -DUSBD_VID_SPARK=0x2B04 -DUSBD_PID_DFU=0xD006 -DUSBD_PID_CDC=0xC006 -DSPARK_PLATFORM -g3 -gdwarf-2 -Os -mcpu=cortex-m3 -mthumb -DINCLUDE_PLATFORM=1 -DPRODUCT_ID=6 -DPRODUCT_FIRMWARE_VERSION=65535 -DUSE_STDPERIPH_DRIVER -DDFU_BUILD_ENABLE -DSYSTEM_VERSION_STRING=0.7.0 -DRELEASE_BUILD -I./inc -I../wiring/inc -I../system/inc -I../services/inc -I../communication/src -I../hal/inc -I../hal/shared -I../hal/src/photon -I../hal/src/stm32f2xx -I../hal/src/stm32 -I../hal/src/photon/api -I../hal/src/photon/include -I../hal/src/photon/wiced/security/BESL/host/WICED/ -I../hal/src/photon/wiced/security/BESL/include -I../hal/src/photon/wiced/security/BESL -I../hal/src/photon/wiced/security/BESL/crypto -I../hal/src/photon/wiced/WWD/include/ -I../hal/src/photon/wiced/platform/include/ -I../hal/src/photon/wiced/platform/GCC/ -I../hal/src/photon/wiced/security/BESL/supplicant/ -I../hal/src/photon/libraries/crypto -I../platform/shared/inc -I../platform/MCU/STM32F2xx/STM32_USB_Host_Driver/inc -I../platform/MCU/STM32F2xx/STM32_StdPeriph_Driver/inc -I../platform/MCU/STM32F2xx/STM32_USB_OTG_Driver/inc -I../platform/MCU/STM32F2xx/STM32_USB_Device_Driver/inc -I../platform/MCU/STM32F2xx/SPARK_Firmware_Driver/inc -I../platform/MCU/shared/STM32/inc -I../platform/MCU/STM32F2xx/CMSIS/Include -I../platform/MCU/STM32F2xx/CMSIS/Device/ST/Include -I../dynalib/inc -Isrc -I./libraries -Ilib/Adafruit_mfGFX/src -Ilib/XPT2046_Touch/src -Ilib/sht20/src -Ilib/Adafruit_ILI9341/src -I. -MD -MP -MF ../build/target/user/platform-6-msrc/systemStatus.o.d -ffunction-sections -fdata-sections -Wall -Wno-switch -Wno-error=deprecated-declarations -fmessage-length=0 -fno-strict-aliasing -DSPARK=1 -DPARTICLE=1 -Wundef -DSTART_DFU_FLASHER_SERIAL_SPEED=14400 -DSTART_YMODEM_FLASHER_SERIAL_SPEED=28800 -DBOOTLOADER_SDK_3_3_0_PARTICLE -DPARTICLE_DCT_COMPATIBILITY -DSPARK_PLATFORM_NET=BCM9WCDUSI09 -fno-builtin-malloc -fno-builtin-free -fno-

It stops right then, nothing else coming out.

Does someone has a clue of what this could mean?

What should I check?

I have been deleting and out-commenting lines for 2 days and wonder if there’s something I am missing.

It might help if you could post the systemStatus.cpp and systemStatus.h files? Assume that there is a #include “systemStatus.h” in your .ino file?

Yes, there is.

Here’s my code

Systemstatus.h

#ifndef SYSTEMSTATUS_H
#define SYSTEMSTATUS_H

#include <Particle.h>

class SystemStatus {
/*  
  struct SystemStatusStruct {
     int dayCounter; //counting days the grow was active. Starting from 1
     bool isDay; // true if the light is on
     int minutesInPhotoperiod; //how long has the system been in current photoperiod?  E.g. 31 minutes in NIGHT
     int dayDuration; //how long is the light on?  Starts out at 18 hrs (18*60)
  };
*/
  
  public:
  SystemStatus();
  int getDayCounter();
  bool isDay();
  int getMinutesInPhotoperiod();
  int getDayDuration();
  /*
  void setIsDay(bool);
  void setMinutesInPhotoperiod(int);
*/
};
#endif

systemstatus.cpp

#include <Particle.h>
#include "systemStatus.h" 

SystemStatus::SystemStatus() {
    
    //int dayCounter =-1, bool isDay = false, int minutesInPhotoperiod = 0, int dayDuration = (18*60)
  
 // SystemStatusStruct _systemStatus = { dayCounter, isDay, minutesInPhotoperiod, dayDuration };


    
    
   //EEPROM.get(0, systemStatus); // get system status after re-start


    
}
  
int SystemStatus::getDayCounter() {
  //return this->dayCounter;
  return 1;
}
bool SystemStatus::isDay() {
  return true;
}
int SystemStatus::getMinutesInPhotoperiod() {
  return 1;
}
int SystemStatus::getDayDuration() {
  return 1;
}
/*
void SystemStatus::setIsDay(bool isDay) {
   
}
void SystemStatus::setMinutesInPhotoperiod(int minutesInPhotoperiod) {
  
}
*/

and in my .ino file I do (among other things)

#include <XPT2046_Touch.h>
#include <Adafruit_mfGFX.h>
#include "DFRobot_SHT20.h"

DFRobot_SHT20 sht20;

#include "Adafruit_ILI9341.h"
Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC, D6);


#include "systemStatus.h"
SystemStatus systemStatus;

#include "button.h"
Button buttons[1];

#include "tent.h"
Tent tent;

#include "screen.h"
Screen screen;

Timer draw_temp_home(5000,&Tent::checkStats,tent);

Weird. Are you using the webIDE? There are no further RAW output from the compiler?

Have you tried in .h file including <Application.h> instead of <Particle.h>.
You do not need to repeat #include <Particle.h> in each of .h and .cpp?
Also, putting void in parameters of each function declaration e.g. SystemStatus(void);

Hopefully someone with more knowledge of the compiler can help you.

@volker, how are you compiling? Assuming this is a local toolchain, which folder are you compiling from. Can you show your make command?

I am compiling on a cloud ubuntu box.

It has the (latest) Particle CLI installed.

My make command:

particle flash <myDeviceName>

I am compiling from a top level folder, It looks like this:

This is not a make command
If you want to build your project, you’d rather use
particle compile photon .
(assuming Photon as your target and the dot denotes current directory - where the project.properties fiel lives).

Ok,

I just did

particle compile photon .

its the same output


Building cpp file: src/systemStatus.cpp
Invoking: ARM GCC CPP Compiler
mkdir -p ../build/target/user/platform-6-msrc/
arm-none-eabi-gcc -DSTM32_DEVICE -DSTM32F2XX -DPLATFORM_THREADING=1 -DPLATFORM_ID=6 -DPLATFORM_NAME=photon -DUSBD_VID_SPARK=0x2B04 -DUSBD_PID_DFU=0xD006 -DUSBD_PID_CDC=0xC006 -DSPARK_PLATFORM -g3 -gdwarf-2 -Os -mcpu=cortex-m3 -mthumb -DINCLUDE_PLATFORM=1 -DPRODUCT_ID=6 -DPRODUCT_FIRMWARE_VERSION=65535 -DUSE_STDPERIPH_DRIVER -DDFU_BUILD_ENABLE -DSYSTEM_VERSION_STRING=0.7.0 -DRELEASE_BUILD -I./inc -I../wiring/inc -I../system/inc -I../services/inc -I../communication/src -I../hal/inc -I../hal/shared -I../hal/src/photon -I../hal/src/stm32f2xx -I../hal/src/stm32 -I../hal/src/photon/api -I../hal/src/photon/include -I../hal/src/photon/wiced/security/BESL/host/WICED/ -I../hal/src/photon/wiced/security/BESL/include -I../hal/src/photon/wiced/security/BESL -I../hal/src/photon/wiced/security/BESL/crypto -I../hal/src/photon/wiced/WWD/include/ -I../hal/src/photon/wiced/platform/include/ -I../hal/src/photon/wiced/platform/GCC/ -I../hal/src/photon/wiced/security/BESL/supplicant/ -I../hal/src/photon/libraries/crypto -I../platform/shared/inc -I../platform/MCU/STM32F2xx/STM32_USB_Host_Driver/inc -I../platform/MCU/STM32F2xx/STM32_StdPeriph_Driver/inc -I../platform/MCU/STM32F2xx/STM32_USB_OTG_Driver/inc -I../platform/MCU/STM32F2xx/STM32_USB_Device_Driver/inc -I../platform/MCU/STM32F2xx/SPARK_Firmware_Driver/inc -I../platform/MCU/shared/STM32/inc -I../platform/MCU/STM32F2xx/CMSIS/Include -I../platform/MCU/STM32F2xx/CMSIS/Device/ST/Include -I../dynalib/inc -Isrc -I./libraries -Ilib/Adafruit_mfGFX/src -Ilib/XPT2046_Touch/src -Ilib/sht20/src -Ilib/Adafruit_ILI9341/src -I. -MD -MP -MF ../build/target/user/platform-6-msrc/systemStatus.o.d -ffunction-sections -fdata-sections -Wall -Wno-switch -Wno-error=deprecated-declarations -fmessage-length=0 -fno-strict-aliasing -DSPARK=1 -DPARTICLE=1 -Wundef -DSTART_DFU_FLASHER_SERIAL_SPEED=14400 -DSTART_YMODEM_FLASHER_SERIAL_SPEED=28800 -DBOOTLOADER_SDK_3_3_0_PARTICLE -DPARTICLE_DCT_COMPATIBILITY -DSPARK_PLATFORM_NET=BCM9WCDUSI09 -fno-builtin-malloc -fno-builtin-free -fno

Can you show your project.properties file?
With the above command you should first see a list of all source files plus the project.properties file that get uploaded to the cloud for compile.

like this

>./Particle/Test/test$ particle compile photon .

Compiling code for photon

Including:
    lib/uCamIII/src/uCamIII.h
    lib/uCamIII/examples/uCamTest/uCamTest.ino
    src/test.ino
    lib/uCamIII/src/uCamIII.cpp
    project.properties
attempting to compile firmware

Your log doesn’t show that part.

Ok, there was more output hidden above the scrolled area.

This is my complete compiler output:

Processing  src/Tomatotent.ino
Checking library Adafruit_ILI9341...
Checking library XPT2046_Touch...
Checking library sht20...
Checking library Adafruit_mfGFX...
Installing library Adafruit_ILI9341 1.0.3 to lib/Adafruit_ILI9341 ...
Installing library sht20 1.0.0 to lib/sht20 ...
Installing library XPT2046_Touch 1.1.5 to lib/XPT2046_Touch ...
Installing library Adafruit_mfGFX 1.0.3 to lib/Adafruit_mfGFX ...
Library XPT2046_Touch 1.1.5 installed.
Library sht20 1.0.0 installed.
Library Adafruit_ILI9341 1.0.3 installed.
Library Adafruit_mfGFX 1.0.3 installed.
make -C ../modules/photon/user-part all
make[1]: Entering directory '/firmware/modules/photon/user-part'
make -C ../../../user
make[2]: Entering directory '/firmware/user'
Building cpp file: src/Tomatotent.cpp
Invoking: ARM GCC CPP Compiler
mkdir -p ../build/target/user/platform-6-msrc/
arm-none-eabi-gcc -DSTM32_DEVICE -DSTM32F2XX -DPLATFORM_THREADING=1 -DPLATFORM_ID=6 -DPLATFORM_NAME=photon -DUSBD_VID_SPARK=0x2B04 -DUSBD_PID_DFU=0xD006 -DUSBD_PID_CDC=0xC006 -DSPARK_PLATFORM -g3 -gdwarf-2 -Os -mcpu=cortex-m3 -mthumb -DINCLUDE_PLATFORM=1 -DPRODUCT_ID=6 -DPRODUCT_FIRMWARE_VERSION=65535 -DUSE_STDPERIPH_DRIVER -DDFU_BUILD_ENABLE -DSYSTEM_VERSION_STRING=0.7.0 -DRELEASE_BUILD -I./inc -I../wiring/inc -I../system/inc -I../services/inc -I../communication/src -I../hal/inc -I../hal/shared -I../hal/src/photon -I../hal/src/stm32f2xx -I../hal/src/stm32 -I../hal/src/photon/api -I../hal/src/photon/include -I../hal/src/photon/wiced/security/BESL/host/WICED/ -I../hal/src/photon/wiced/security/BESL/include -I../hal/src/photon/wiced/security/BESL -I../hal/src/photon/wiced/security/BESL/crypto -I../hal/src/photon/wiced/WWD/include/ -I../hal/src/photon/wiced/platform/include/ -I../hal/src/photon/wiced/platform/GCC/ -I../hal/src/photon/wiced/security/BESL/supplicant/ -I../hal/src/photon/libraries/crypto -I../platform/shared/inc -I../platform/MCU/STM32F2xx/STM32_USB_Host_Driver/inc -I../platform/MCU/STM32F2xx/STM32_StdPeriph_Driver/inc -I../platform/MCU/STM32F2xx/STM32_USB_OTG_Driver/inc -I../platform/MCU/STM32F2xx/STM32_USB_Device_Driver/inc -I../platform/MCU/STM32F2xx/SPARK_Firmware_Driver/inc -I../platform/MCU/shared/STM32/inc -I../platform/MCU/STM32F2xx/CMSIS/Include -I../platform/MCU/STM32F2xx/CMSIS/Device/ST/Include -I../dynalib/inc -Isrc -I./libraries -Ilib/Adafruit_mfGFX/src -Ilib/XPT2046_Touch/src -Ilib/sht20/src -Ilib/Adafruit_ILI9341/src -I. -MD -MP -MF ../build/target/user/platform-6-msrc/Tomatotent.o.d -ffunction-sections -fdata-sections -Wall -Wno-switch -Wno-error=deprecated-declarations -fmessage-length=0 -fno-strict-aliasing -DSPARK=1 -DPARTICLE=1 -Wundef -DSTART_DFU_FLASHER_SERIAL_SPEED=14400 -DSTART_YMODEM_FLASHER_SERIAL_SPEED=28800 -DBOOTLOADER_SDK_3_3_0_PARTICLE -DPARTICLE_DCT_COMPATIBILITY -DSPARK_PLATFORM_NET=BCM9WCDUSI09 -fno-builtin-malloc -fno-builtin-free -fno-builtin-realloc  -DLOG_INCLUDE_SOURCE_INFO=1 -DPARTICLE_USER_MODULE -DUSER_FIRMWARE_IMAGE_SIZE=0x20000 -DUSER_FIRMWARE_IMAGE_LOCATION=0x80A0000 -DMODULAR_FIRMWARE=1 -DMODULE_VERSION=5 -DMODULE_FUNCTION=5 -DMODULE_INDEX=1 -DMODULE_DEPENDENCY=4,2,207 -DMODULE_DEPENDENCY2=0,0,0 -D_WINSOCK_H -D_GNU_SOURCE -DLOG_MODULE_CATEGORY="\"app\""  -fno-exceptions -fno-rtti -fcheck-new -std=gnu++11 -c -o ../build/target/user/platform-6-msrc/Tomatotent.o src/Tomatotent.cpp
In file included from src/Tomatotent.ino:18:0:
lib/XPT2046_Touch/src/XPT2046_Touch.h: In constructor 'constexpr XPT2046_Touchscreen::XPT2046_Touchscreen(SPIClass&, int, int, uint8_t)':
lib/XPT2046_Touch/src/XPT2046_Touch.h:45:13: warning: 'XPT2046_Touchscreen::xptSPI' will be initialized after [-Wreorder]
   SPIClass &xptSPI;
             ^
lib/XPT2046_Touch/src/XPT2046_Touch.h:18:22: warning:   'int XPT2046_Touchscreen::displayWidth' [-Wreorder]
   int displayWidth = 0;
                      ^
lib/XPT2046_Touch/src/XPT2046_Touch.h:23:14: warning:   when initialized here [-Wreorder]
    constexpr XPT2046_Touchscreen(SPIClass &spi, int displaywidth, int displayheight, uint8_t cspin)
              ^
lib/XPT2046_Touch/src/XPT2046_Touch.h: In constructor 'constexpr XPT2046_Touchscreen::XPT2046_Touchscreen(SPIClass&, int, int, uint8_t, uint8_t)':
lib/XPT2046_Touch/src/XPT2046_Touch.h:45:13: warning: 'XPT2046_Touchscreen::xptSPI' will be initialized after [-Wreorder]
   SPIClass &xptSPI;
             ^
lib/XPT2046_Touch/src/XPT2046_Touch.h:18:22: warning:   'int XPT2046_Touchscreen::displayWidth' [-Wreorder]
   int displayWidth = 0;
                      ^
lib/XPT2046_Touch/src/XPT2046_Touch.h:26:12: warning:   when initialized here [-Wreorder]
  constexpr XPT2046_Touchscreen(SPIClass &spi, int displaywidth, int displayheight, uint8_t cspin, uint8_t tirq)
            ^
src/Tomatotent.ino: In function 'void loop()':
src/Tomatotent.ino:135:16: warning: variable 'p' set but not used [-Wunused-but-set-variable]
       TS_Point p = ts.getPosition();
                ^
src/Tomatotent.ino:138:15: warning: unused variable 'c' [-Wunused-variable]
       uint8_t c {0};
               ^

Building cpp file: src/systemStatus.cpp
Invoking: ARM GCC CPP Compiler
mkdir -p ../build/target/user/platform-6-msrc/
arm-none-eabi-gcc -DSTM32_DEVICE -DSTM32F2XX -DPLATFORM_THREADING=1 -DPLATFORM_ID=6 -DPLATFORM_NAME=photon -DUSBD_VID_SPARK=0x2B04 -DUSBD_PID_DFU=0xD006 -DUSBD_PID_CDC=0xC006 -DSPARK_PLATFORM -g3 -gdwarf-2 -Os -mcpu=cortex-m3 -mthumb -DINCLUDE_PLATFORM=1 -DPRODUCT_ID=6 -DPRODUCT_FIRMWARE_VERSION=65535 -DUSE_STDPERIPH_DRIVER -DDFU_BUILD_ENABLE -DSYSTEM_VERSION_STRING=0.7.0 -DRELEASE_BUILD -I./inc -I../wiring/inc -I../system/inc -I../services/inc -I../communication/src -I../hal/inc -I../hal/shared -I../hal/src/photon -I../hal/src/stm32f2xx -I../hal/src/stm32 -I../hal/src/photon/api -I../hal/src/photon/include -I../hal/src/photon/wiced/security/BESL/host/WICED/ -I../hal/src/photon/wiced/security/BESL/include -I../hal/src/photon/wiced/security/BESL -I../hal/src/photon/wiced/security/BESL/crypto -I../hal/src/photon/wiced/WWD/include/ -I../hal/src/photon/wiced/platform/include/ -I../hal/src/photon/wiced/platform/GCC/ -I../hal/src/photon/wiced/security/BESL/supplicant/ -I../hal/src/photon/libraries/crypto -I../platform/shared/inc -I../platform/MCU/STM32F2xx/STM32_USB_Host_Driver/inc -I../platform/MCU/STM32F2xx/STM32_StdPeriph_Driver/inc -I../platform/MCU/STM32F2xx/STM32_USB_OTG_Driver/inc -I../platform/MCU/STM32F2xx/STM32_USB_Device_Driver/inc -I../platform/MCU/STM32F2xx/SPARK_Firmware_Driver/inc -I../platform/MCU/shared/STM32/inc -I../platform/MCU/STM32F2xx/CMSIS/Include -I../platform/MCU/STM32F2xx/CMSIS/Device/ST/Include -I../dynalib/inc -Isrc -I./libraries -Ilib/Adafruit_mfGFX/src -Ilib/XPT2046_Touch/src -Ilib/sht20/src -Ilib/Adafruit_ILI9341/src -I. -MD -MP -MF ../build/target/user/platform-6-msrc/systemStatus.o.d -ffunction-sections -fdata-sections -Wall -Wno-switch -Wno-error=deprecated-declarations -fmessage-length=0 -fno-strict-aliasing -DSPARK=1 -DPARTICLE=1 -Wundef -DSTART_DFU_FLASHER_SERIAL_SPEED=14400 -DSTART_YMODEM_FLASHER_SERIAL_SPEED=28800 -DBOOTLOADER_SDK_3_3_0_PARTICLE -DPARTICLE_DCT_COMPATIBILITY -DSPARK_PLATFORM_NET=BCM9WCDUSI09 -fno-builtin-malloc -fno-builtin-free -fno-cabox@TT-100:~/workspace$

if helpful, my complete code is here:

You seem to run the command from the wrong directory.
When I build your project I get this

Compiling code for photon

Including:
    src\button.h
    src\screen.h
    src\systemStatus.h
    src\tent.h
    src\Tomatotent.ino
    src\button.cpp
    src\screen.cpp
    src\systemStatus.cpp
    src\tent.cpp
    project.properties
attempting to compile firmware

Processing  src/Tomatotent.ino
Checking library Adafruit_ILI9341...
Checking library XPT2046_Touch...
Checking library sht20...
Checking library Adafruit_mfGFX...
Installing library Adafruit_mfGFX 1.0.3 to lib/Adafruit_mfGFX ...
Installing library sht20 1.0.0 to lib/sht20 ...
Installing library Adafruit_ILI9341 1.0.3 to lib/Adafruit_ILI9341 ...
Installing library XPT2046_Touch 1.1.4 to lib/XPT2046_Touch ...
Library Adafruit_ILI9341 1.0.3 installed.
Library Adafruit_mfGFX 1.0.3 installed.
Library XPT2046_Touch 1.1.4 installed.
Library sht20 1.0.0 installed.
make -C ../modules/photon/user-part all
make[1]: Entering directory '/firmware/modules/photon/user-part'
make -C ../../../user
make[2]: Entering directory '/firmware/user'
Building cpp file: src/Tomatotent.cpp
Invoking: ARM GCC CPP Compiler
mkdir -p ../build/target/user/platform-6-msrc/
arm-none-eabi-gcc -DSTM32_DEVICE -DSTM32F2XX -DPLATFORM_THREADING=1 -DPLATFORM_ID=6 -DPLATFORM_NAME=photon -DUSBD_VID_SPARK=0x2B04 -DUSBD_PID_DFU=0xD006 -DUSBD_PID_CDC=0xC006 -DSPARK_PLATFORM -g3 -gdwarf-2 -Os -mcpu=cortex-m3 -mthumb -DINCLUDE_PLATFORM=1 -DPRODUCT_ID=6 -DPRODUCT_FIRMWARE_VERSION=65535 -DUSE_STDPERIPH_DRIVER -DDFU_BUILD_ENABLE -DSYSTEM_VERSION_STRING=0.7.0 -DRELEASE_BUILD -I./inc -I../wiring/inc -I../system/inc -I../services/inc -I../communication/src -I../hal/inc -I../hal/shared -I../hal/src/photon -I../hal/src/stm32f2xx -I../hal/src/stm32 -I../hal/src/photon/api -I../hal/src/photon/include -I../hal/src/photon/wiced/security/BESL/host/WICED/ -I../hal/src/photon/wiced/security/BESL/include -I../hal/src/photon/wiced/security/BESL -I../hal/src/photon/wiced/security/BESL/crypto -I../hal/src/photon/wiced/WWD/include/ -I../hal/src/photon/wiced/platform/include/ -I../hal/src/photon/wiced/platform/GCC/ -I../hal/src/photon/wiced/security/BESL/supplicant/ -I../hal/src/photon/libraries/crypto -I../platform/shared/inc -I../platform/MCU/STM32F2xx/STM32_USB_Host_Driver/inc -I../platform/MCU/STM32F2xx/STM32_StdPeriph_Driver/inc -I../platform/MCU/STM32F2xx/STM32_USB_OTG_Driver/inc -I../platform/MCU/STM32F2xx/STM32_USB_Device_Driver/inc -I../platform/MCU/STM32F2xx/SPARK_Firmware_Driver/inc -I../platform/MCU/shared/STM32/inc -I../platform/MCU/STM32F2xx/CMSIS/Include -I../platform/MCU/STM32F2xx/CMSIS/Device/ST/Include -I../dynalib/inc -Isrc -I./libraries -Ilib/Adafruit_mfGFX/src -Ilib/XPT2046_Touch/src -Ilib/sht20/src -Ilib/Adafruit_ILI9341/src -I. -MD -MP -MF ../build/target/user/platform-6-msrc/Tomatotent.o.d -ffunction-sections -fdata-sections -Wall -Wno-switch -Wno-error=deprecated-declarations -fmessage-length=0 -fno-strict-aliasing -DSPARK=1 -DPARTICLE=1 -Wundef -DSTART_DFU_FLASHER_SERIAL_SPEED=14400 -DSTART_YMODEM_FLASHER_SERIAL_SPEED=28800 -DBOOTLOADER_SDK_3_3_0_PARTICLE -DPARTICLE_DCT_COMPATIBILITY -DSPARK_PLATFORM_NET=BCM9WCDUSI09 -fno-builtin-malloc -fno-builtin-free -fno-builtin-realloc  -DLOG_INCLUDE_SOURCE_INFO=1 -DPARTICLE_USER_MODULE -DUSER_FIRMWARE_IMAGE_SIZE=0x20000 -DUSER_FIRMWARE_IMAGE_LOCATION=0x80A0000 -DMODULAR_FIRMWARE=1 -DMODULE_VERSION=5 -DMODULE_FUNCTION=5 -DMODULE_INDEX=1 -DMODULE_DEPENDENCY=4,2,207 -DMODULE_DEPENDENCY2=0,0,0 -D_WINSOCK_H -D_GNU_SOURCE -DLOG_MODULE_CATEGORY="\"app\""  -fno-exceptions -fno-rtti -fcheck-new -std=gnu++11 -c -o ../build/target/user/platform-6-msrc/Tomatotent.o src/Tomatotent.cpp
In file included from src/Tomatotent.ino:18:0:
lib/XPT2046_Touch/src/XPT2046_Touch.h: In constructor 'constexpr XPT2046_Touchscreen::XPT2046_Touchscreen(SPIClass&, int, int, uint8_t)':
lib/XPT2046_Touch/src/XPT2046_Touch.h:45:13: warning: 'XPT2046_Touchscreen::xptSPI' will be initialized after [-Wreorder]
   SPIClass &xptSPI;
             ^
lib/XPT2046_Touch/src/XPT2046_Touch.h:18:22: warning:   'int XPT2046_Touchscreen::displayWidth' [-Wreorder]
   int displayWidth = 0;
                      ^
lib/XPT2046_Touch/src/XPT2046_Touch.h:23:14: warning:   when initialized here [-Wreorder]
    constexpr XPT2046_Touchscreen(SPIClass &spi, int displaywidth, int displayheight, uint8_t cspin)
              ^
lib/XPT2046_Touch/src/XPT2046_Touch.h: In constructor 'constexpr XPT2046_Touchscreen::XPT2046_Touchscreen(SPIClass&, int, int, uint8_t, uint8_t)':
lib/XPT2046_Touch/src/XPT2046_Touch.h:45:13: warning: 'XPT2046_Touchscreen::xptSPI' will be initialized after [-Wreorder]
   SPIClass &xptSPI;
             ^
lib/XPT2046_Touch/src/XPT2046_Touch.h:18:22: warning:   'int XPT2046_Touchscreen::displayWidth' [-Wreorder]
   int displayWidth = 0;
                      ^
lib/XPT2046_Touch/src/XPT2046_Touch.h:26:12: warning:   when initialized here [-Wreorder]
  constexpr XPT2046_Touchscreen(SPIClass &spi, int displaywidth, int displayheight, uint8_t cspin, uint8_t tirq)
            ^
src/Tomatotent.ino: In function 'void loop()':
src/Tomatotent.ino:135:16: warning: variable 'p' set but not used [-Wunused-but-set-variable]
       TS_Point p = ts.getPosition();
                ^
src/Tomatotent.ino:138:15: warning: unused variable 'c' [-Wunused-variable]
       uint8_t c {0};
               ^

Building cpp file: src/systemStatus.cpp
Invoking: ARM GCC CPP Compiler
mkdir -p ../build/target/user/platform-6-msrc/
arm-none-eabi-gcc -DSTM32_DEVICE -DSTM32F2XX -DPLATFORM_THREADING=1 -DPLATFORM_ID=6 -DPLATFORM_NAME=photon -DUSBD_VID_SPARK=0x2B04 -DUSBD_PID_DFU=0xD006 -DUSBD_PID_CDC=0xC006 -DSPARK_PLATFORM -g3 -gdwarf-2 -Os -mcpu=cortex-m3 -mthumb -DINCLUDE_PLATFORM=1 -DPRODUCT_ID=6 -DPRODUCT_FIRMWARE_VERSION=65535 -DUSE_STDPERIPH_DRIVER -DDFU_BUILD_ENABLE -DSYSTEM_VERSION_STRING=0.7.0 -DRELEASE_BUILD -I./inc -I../wiring/inc -I../system/inc -I../services/inc -I../communication/src -I../hal/inc -I../hal/shared -I../hal/src/photon -I../hal/src/stm32f2xx -I../hal/src/stm32 -I../hal/src/photon/api -I../hal/src/photon/include -I../hal/src/photon/wiced/security/BESL/host/WICED/ -I../hal/src/photon/wiced/security/BESL/include -I../hal/src/photon/wiced/security/BESL -I../hal/src/photon/wiced/security/BESL/crypto -I../hal/src/photon/wiced/WWD/include/ -I../hal/src/photon/wiced/platform/include/ -I../hal/src/photon/wiced/platform/GCC/ -I../hal/src/photon/wiced/security/BESL/supplicant/ -I../hal/src/photon/libraries/crypto -I../platform/shared/inc -I../platform/MCU/STM32F2xx/STM32_USB_Host_Driver/inc -I../platform/MCU/STM32F2xx/STM32_StdPeriph_Driver/inc -I../platform/MCU/STM32F2xx/STM32_USB_OTG_Driver/inc -I../platform/MCU/STM32F2xx/STM32_USB_Device_Driver/inc -I../platform/MCU/STM32F2xx/SPARK_Firmware_Driver/inc -I../platform/MCU/shared/STM32/inc -I../platform/MCU/STM32F2xx/CMSIS/Include -I../platform/MCU/STM32F2xx/CMSIS/Device/ST/Include -I../dynalib/inc -Isrc -I./libraries -Ilib/Adafruit_mfGFX/src -Ilib/XPT2046_Touch/src -Ilib/sht20/src -Ilib/Adafruit_ILI9341/src -I. -MD -MP -MF ../build/target/user/platform-6-msrc/systemStatus.o.d -ffunction-sections -fdata-sections -Wall -Wno-switch -Wno-error=deprecated-declarations -fmessage-length=0 -fno-strict-aliasing -DSPARK=1 -DPARTICLE=1 -Wundef -DSTART_DFU_FLASHER_SERIAL_SPEED=14400 -DSTART_YMODEM_FLASHER_SERIAL_SPEED=28800 -DBOOTLOADER_SDK_3_3_0_PARTICLE -DPARTICLE_DCT_COMPATIBILITY -DSPARK_PLATFORM_NET=BCM9WCDUSI09 -fno-builtin-malloc -fno-builtin-free -fno-builtin-realloc  -DLOG_INCLUDE_SOURCE_INFO=1 -DPARTICLE_USER_MODULE -DUSER_FIRMWARE_IMAGE_SIZE=0x20000 -DUSER_FIRMWARE_IMAGE_LOCATION=0x80A0000 -DMODULAR_FIRMWARE=1 -DMODULE_VERSION=5 -DMODULE_FUNCTION=5 -DMODULE_INDEX=1 -DMODULE_DEPENDENCY=4,2,207 -DMODULE_DEPENDENCY2=0,0,0 -D_WINSOCK_H -D_GNU_SOURCE -DLOG_MODULE_CATEGORY="\"app\""  -fno-exceptions -fno-rtti -fcheck-new -std=gnu++11 -c -o ../build/target/user/platform-6-msrc/systemStatus.o src/systemStatus.cpp

Building cpp file: src/screen.cpp
Invoking: ARM GCC CPP Compiler
mkdir -p ../build/target/user/platform-6-msrc/
arm-none-eabi-gcc -DSTM32_DEVICE -DSTM32F2XX -DPLATFORM_THREADING=1 -DPLATFORM_ID=6 -DPLATFORM_NAME=photon -DUSBD_VID_SPARK=0x2B04 -DUSBD_PID_DFU=0xD006 -DUSBD_PID_CDC=0xC006 -DSPARK_PLATFORM -g3 -gdwarf-2 -Os -mcpu=cortex-m3 -mthumb -DINCLUDE_PLATFORM=1 -DPRODUCT_ID=6 -DPRODUCT_FIRMWARE_VERSION=65535 -DUSE_STDPERIPH_DRIVER -DDFU_BUILD_ENABLE -DSYSTEM_VERSION_STRING=0.7.0 -DRELEASE_BUILD -I./inc -I../wiring/inc -I../system/inc -I../services/inc -I../communication/src -I../hal/inc -I../hal/shared -I../hal/src/photon -I../hal/src/stm32f2xx -I../hal/src/stm32 -I../hal/src/photon/api -I../hal/src/photon/include -I../hal/src/photon/wiced/security/BESL/host/WICED/ -I../hal/src/photon/wiced/security/BESL/include -I../hal/src/photon/wiced/security/BESL -I../hal/src/photon/wiced/security/BESL/crypto -I../hal/src/photon/wiced/WWD/include/ -I../hal/src/photon/wiced/platform/include/ -I../hal/src/photon/wiced/platform/GCC/ -I../hal/src/photon/wiced/security/BESL/supplicant/ -I../hal/src/photon/libraries/crypto -I../platform/shared/inc -I../platform/MCU/STM32F2xx/STM32_USB_Host_Driver/inc -I../platform/MCU/STM32F2xx/STM32_StdPeriph_Driver/inc -I../platform/MCU/STM32F2xx/STM32_USB_OTG_Driver/inc -I../platform/MCU/STM32F2xx/STM32_USB_Device_Driver/inc -I../platform/MCU/STM32F2xx/SPARK_Firmware_Driver/inc -I../platform/MCU/shared/STM32/inc -I../platform/MCU/STM32F2xx/CMSIS/Include -I../platform/MCU/STM32F2xx/CMSIS/Device/ST/Include -I../dynalib/inc -Isrc -I./libraries -Ilib/Adafruit_mfGFX/src -Ilib/XPT2046_Touch/src -Ilib/sht20/src -Ilib/Adafruit_ILI9341/src -I. -MD -MP -MF ../build/target/user/platform-6-msrc/screen.o.d -ffunction-sections -fdata-sections -Wall -Wno-switch -Wno-error=deprecated-declarations -fmessage-length=0 -fno-strict-aliasing -DSPARK=1 -DPARTICLE=1 -Wundef -DSTART_DFU_FLASHER_SERIAL_SPEED=14400 -DSTART_YMODEM_FLASHER_SERIAL_SPEED=28800 -DBOOTLOADER_SDK_3_3_0_PARTICLE -DPARTICLE_DCT_COMPATIBILITY -DSPARK_PLATFORM_NET=BCM9WCDUSI09 -fno-builtin-malloc -fno-builtin-free -fno-builtin-realloc  -DLOG_INCLUDE_SOURCE_INFO=1 -DPARTICLE_USER_MODULE -DUSER_FIRMWARE_IMAGE_SIZE=0x20000 -DUSER_FIRMWARE_IMAGE_LOCATION=0x80A0000 -DMODULAR_FIRMWARE=1 -DMODULE_VERSION=5 -DMODULE_FUNCTION=5 -DMODULE_INDEX=1 -DMODULE_DEPENDENCY=4,2,207 -DMODULE_DEPENDENCY2=0,0,0 -D_WINSOCK_H -D_GNU_SOURCE -DLOG_MODULE_CATEGORY="\"app\""  -fno-exceptions -fno-rtti -fcheck-new -std=gnu++11 -c -o ../build/target/user/platform-6-msrc/screen.o src/screen.cpp
src/screen.cpp: In member function 'void Screen::homeScreen()':
src/screen.cpp:9:5: error: 'tft' was not declared in this scope
     tft.fillScreen(ILI9341_BLACK);
     ^
src/screen.cpp:9:20: error: 'ILI9341_BLACK' was not declared in this scope
     tft.fillScreen(ILI9341_BLACK);
                    ^
src/screen.cpp:10:5: error: 'Button' was not declared in this scope
     Button startGrowBtn("startGrowBtn", 20,180,250,38, "Start a Grow",18,8);
     ^
src/screen.cpp:11:5: error: 'buttons' was not declared in this scope
     buttons[0] = startGrowBtn;
     ^
src/screen.cpp:11:18: error: 'startGrowBtn' was not declared in this scope
     buttons[0] = startGrowBtn;
                  ^
src/screen.cpp: In member function 'void Screen::countMinute()':
src/screen.cpp:19:30: error: 'systemStatus' was not declared in this scope
   int minutesInPhotoperiod = systemStatus.getMinutesInPhotoperiod()+1;
                              ^
src/screen.cpp:39:104: error: 'floor' was not declared in this scope
     int hoursLeft = floor((systemStatus.getDayDuration() - systemStatus.getMinutesInPhotoperiod()) / 60);
                                                                                                        ^
src/screen.cpp:42:5: error: 'tft' was not declared in this scope
     tft.fillRect(10,10,140,18,ILI9341_BLACK);
     ^
src/screen.cpp:42:31: error: 'ILI9341_BLACK' was not declared in this scope
     tft.fillRect(10,10,140,18,ILI9341_BLACK);
                               ^
src/screen.cpp:45:22: error: 'ILI9341_YELLOW' was not declared in this scope
     tft.setTextColor(ILI9341_YELLOW);
                      ^
../build/module.mk:267: recipe for target '../build/target/user/platform-6-msrc/screen.o' failed
make[2]: Leaving directory '/firmware/user'
make[2]: *** [../build/target/user/platform-6-msrc/screen.o] Error 1
../../../build/recurse.mk:11: recipe for target 'user' failed
make[1]: *** [user] Error 2
make[1]: Leaving directory '/firmware/modules/photon/user-part'
../build/recurse.mk:11: recipe for target 'modules/photon/user-part' failed
make: *** [modules/photon/user-part] Error 2
Compile failed: Compiler encountered an error

And there are some more useful errors highlighted.

Sorry, the previous output was from another build farm which had an outdated library repository.

Without looking too deep, I think you are missing this in in your screen.h

#include <Adafruit_ILI9341>
extern Adafruit_ILI9341 tft;

Ok,

very sorry, THIS is finally my complete compiler output:

compiling code for photon

Including:
    src/button.h
    src/screen.h
    src/systemStatus.h
    src/tent.h
    src/Tomatotent.ino
    src/button.cpp
    src/screen.cpp
    src/systemStatus.cpp
    src/tent.cpp
    project.properties
attempting to compile firmware

Processing  src/Tomatotent.ino
Checking library Adafruit_ILI9341...
Checking library XPT2046_Touch...
Checking library sht20...
Checking library Adafruit_mfGFX...
Installing library Adafruit_ILI9341 1.0.3 to lib/Adafruit_ILI9341 ...
Installing library sht20 1.0.0 to lib/sht20 ...
Installing library XPT2046_Touch 1.1.5 to lib/XPT2046_Touch ...
Installing library Adafruit_mfGFX 1.0.3 to lib/Adafruit_mfGFX ...
Library XPT2046_Touch 1.1.5 installed.
Library sht20 1.0.0 installed.
Library Adafruit_ILI9341 1.0.3 installed.
Library Adafruit_mfGFX 1.0.3 installed.
make -C ../modules/photon/user-part all
make[1]: Entering directory '/firmware/modules/photon/user-part'
make -C ../../../user
make[2]: Entering directory '/firmware/user'
Building cpp file: src/Tomatotent.cpp
Invoking: ARM GCC CPP Compiler
mkdir -p ../build/target/user/platform-6-msrc/
arm-none-eabi-gcc -DSTM32_DEVICE -DSTM32F2XX -DPLATFORM_THREADING=1 -DPLATFORM_ID=6 -DPLATFORM_NAME=photon -DUSBD_VID_SPARK=0x2B04 -DUSBD_PID_DFU=0xD006 -DUSBD_PID_CDC=0xC006 -DSPARK_PLATFORM -g3 -gdwarf-2 -Os -mcpu=cortex-m3 -mthumb -DINCLUDE_PLATFORM=1 -DPRODUCT_ID=6 -DPRODUCT_FIRMWARE_VERSION=65535 -DUSE_STDPERIPH_DRIVER -DDFU_BUILD_ENABLE -DSYSTEM_VERSION_STRING=0.7.0 -DRELEASE_BUILD -I./inc -I../wiring/inc -I../system/inc -I../services/inc -I../communication/src -I../hal/inc -I../hal/shared -I../hal/src/photon -I../hal/src/stm32f2xx -I../hal/src/stm32 -I../hal/src/photon/api -I../hal/src/photon/include -I../hal/src/photon/wiced/security/BESL/host/WICED/ -I../hal/src/photon/wiced/security/BESL/include -I../hal/src/photon/wiced/security/BESL -I../hal/src/photon/wiced/security/BESL/crypto -I../hal/src/photon/wiced/WWD/include/ -I../hal/src/photon/wiced/platform/include/ -I../hal/src/photon/wiced/platform/GCC/ -I../hal/src/photon/wiced/security/BESL/supplicant/ -I../hal/src/photon/libraries/crypto -I../platform/shared/inc -I../platform/MCU/STM32F2xx/STM32_USB_Host_Driver/inc -I../platform/MCU/STM32F2xx/STM32_StdPeriph_Driver/inc -I../platform/MCU/STM32F2xx/STM32_USB_OTG_Driver/inc -I../platform/MCU/STM32F2xx/STM32_USB_Device_Driver/inc -I../platform/MCU/STM32F2xx/SPARK_Firmware_Driver/inc -I../platform/MCU/shared/STM32/inc -I../platform/MCU/STM32F2xx/CMSIS/Include -I../platform/MCU/STM32F2xx/CMSIS/Device/ST/Include -I../dynalib/inc -Isrc -I./libraries -Ilib/Adafruit_mfGFX/src -Ilib/XPT2046_Touch/src -Ilib/sht20/src -Ilib/Adafruit_ILI9341/src -I. -MD -MP -MF ../build/target/user/platform-6-msrc/Tomatotent.o.d -ffunction-sections -fdata-sections -Wall -Wno-switch -Wno-error=deprecated-declarations -fmessage-length=0 -fno-strict-aliasing -DSPARK=1 -DPARTICLE=1 -Wundef -DSTART_DFU_FLASHER_SERIAL_SPEED=14400 -DSTART_YMODEM_FLASHER_SERIAL_SPEED=28800 -DBOOTLOADER_SDK_3_3_0_PARTICLE -DPARTICLE_DCT_COMPATIBILITY -DSPARK_PLATFORM_NET=BCM9WCDUSI09 -fno-builtin-malloc -fno-builtin-free -fno-builtin-realloc  -DLOG_INCLUDE_SOURCE_INFO=1 -DPARTICLE_USER_MODULE -DUSER_FIRMWARE_IMAGE_SIZE=0x20000 -DUSER_FIRMWARE_IMAGE_LOCATION=0x80A0000 -DMODULAR_FIRMWARE=1 -DMODULE_VERSION=5 -DMODULE_FUNCTION=5 -DMODULE_INDEX=1 -DMODULE_DEPENDENCY=4,2,207 -DMODULE_DEPENDENCY2=0,0,0 -D_WINSOCK_H -D_GNU_SOURCE -DLOG_MODULE_CATEGORY="\"app\""  -fno-exceptions -fno-rtti -fcheck-new -std=gnu++11 -c -o ../build/target/user/platform-6-msrc/Tomatotent.o src/Tomatotent.cpp
In file included from src/Tomatotent.ino:18:0:
lib/XPT2046_Touch/src/XPT2046_Touch.h: In constructor 'constexpr XPT2046_Touchscreen::XPT2046_Touchscreen(SPIClass&, int, int, uint8_t)':
lib/XPT2046_Touch/src/XPT2046_Touch.h:45:13: warning: 'XPT2046_Touchscreen::xptSPI' will be initialized after [-Wreorder]
   SPIClass &xptSPI;
             ^
lib/XPT2046_Touch/src/XPT2046_Touch.h:18:22: warning:   'int XPT2046_Touchscreen::displayWidth' [-Wreorder]
   int displayWidth = 0;
                      ^
lib/XPT2046_Touch/src/XPT2046_Touch.h:23:14: warning:   when initialized here [-Wreorder]
    constexpr XPT2046_Touchscreen(SPIClass &spi, int displaywidth, int displayheight, uint8_t cspin)
              ^
lib/XPT2046_Touch/src/XPT2046_Touch.h: In constructor 'constexpr XPT2046_Touchscreen::XPT2046_Touchscreen(SPIClass&, int, int, uint8_t, uint8_t)':
lib/XPT2046_Touch/src/XPT2046_Touch.h:45:13: warning: 'XPT2046_Touchscreen::xptSPI' will be initialized after [-Wreorder]
   SPIClass &xptSPI;
             ^
lib/XPT2046_Touch/src/XPT2046_Touch.h:18:22: warning:   'int XPT2046_Touchscreen::displayWidth' [-Wreorder]
   int displayWidth = 0;
                      ^
lib/XPT2046_Touch/src/XPT2046_Touch.h:26:12: warning:   when initialized here [-Wreorder]
  constexpr XPT2046_Touchscreen(SPIClass &spi, int displaywidth, int displayheight, uint8_t cspin, uint8_t tirq)
            ^
src/Tomatotent.ino: In function 'void loop()':
src/Tomatotent.ino:135:16: warning: variable 'p' set but not used [-Wunused-but-set-variable]
       TS_Point p = ts.getPosition();
                ^
src/Tomatotent.ino:138:15: warning: unused variable 'c' [-Wunused-variable]
       uint8_t c {0};
               ^

Building cpp file: src/systemStatus.cpp
Invoking: ARM GCC CPP Compiler
mkdir -p ../build/target/user/platform-6-msrc/
arm-none-eabi-gcc -DSTM32_DEVICE -DSTM32F2XX -DPLATFORM_THREADING=1 -DPLATFORM_ID=6 -DPLATFORM_NAME=photon -DUSBD_VID_SPARK=0x2B04 -DUSBD_PID_DFU=0xD006 -DUSBD_PID_CDC=0xC006 -DSPARK_PLATFORM -g3 -gdwarf-2 -Os -mcpu=cortex-m3 -mthumb -DINCLUDE_PLATFORM=1 -DPRODUCT_ID=6 -DPRODUCT_FIRMWARE_VERSION=65535 -DUSE_STDPERIPH_DRIVER -DDFU_BUILD_ENABLE -DSYSTEM_VERSION_STRING=0.7.0 -DRELEASE_BUILD -I./inc -I../wiring/inc -I../system/inc -I../services/inc -I../communication/src -I../hal/inc -I../hal/shared -I../hal/src/photon -I../hal/src/stm32f2xx -I../hal/src/stm32 -I../hal/src/photon/api -I../hal/src/photon/include -I../hal/src/photon/wiced/security/BESL/host/WICED/ -I../hal/src/photon/wiced/security/BESL/include -I../hal/src/photon/wiced/security/BESL -I../hal/src/photon/wiced/security/BESL/crypto -I../hal/src/photon/wiced/WWD/include/ -I../hal/src/photon/wiced/platform/include/ -I../hal/src/photon/wiced/platform/GCC/ -I../hal/src/photon/wiced/security/BESL/supplicant/ -I../hal/src/photon/libraries/crypto -I../platform/shared/inc -I../platform/MCU/STM32F2xx/STM32_USB_Host_Driver/inc -I../platform/MCU/STM32F2xx/STM32_StdPeriph_Driver/inc -I../platform/MCU/STM32F2xx/STM32_USB_OTG_Driver/inc -I../platform/MCU/STM32F2xx/STM32_USB_Device_Driver/inc -I../platform/MCU/STM32F2xx/SPARK_Firmware_Driver/inc -I../platform/MCU/shared/STM32/inc -I../platform/MCU/STM32F2xx/CMSIS/Include -I../platform/MCU/STM32F2xx/CMSIS/Device/ST/Include -I../dynalib/inc -Isrc -I./libraries -Ilib/Adafruit_mfGFX/src -Ilib/XPT2046_Touch/src -Ilib/sht20/src -Ilib/Adafruit_ILI9341/src -I. -MD -MP -MF ../build/target/user/platform-6-msrc/systemStatus.o.d -ffunction-sections -fdata-sections -Wall -Wno-switch -Wno-error=deprecated-declarations -fmessage-length=0 -fno-strict-aliasing -DSPARK=1 -DPARTICLE=1 -Wundef -DSTART_DFU_FLASHER_SERIAL_SPEED=14400 -DSTART_YMODEM_FLASHER_SERIAL_SPEED=28800 -DBOOTLOADER_SDK_3_3_0_PARTICLE -DPARTICLE_DCT_COMPATIBILITY -DSPARK_PLATFORM_NET=BCM9WCDUSI09 -fno-builtin-malloc -fno-builtin-free -fno-

Also couldn’t find XPT2046_Touch.h … it is a private library of mine, published in the particle IDE … I have also published it to public but its not available there.

Just for fun, I will upload it all into the Particle IDE and compile there…

Thank you, I will work through all those error messages now.

Just quickly, I added to screen.h

#include <Adafruit_ILI9341.h>
extern Adafruit_ILI9341 tft;

and it fixed some of the errors.

Yup, there I forgot the extern keyword (see edit above).
But the same is true for your other modules too.

When you declare a variable in your .ino file which you want to use in one of your other .cpp files, the compiler needs to be told that these variables exist externally in another file.

After adding the extern Adafruit_ILI9341 tft; in screen.h I now got a “missing ‘buttons’” message, which needs to be treated the same way - and I expect other errors of a similar kind to pop up after addressing that. But you should now get helpful error messages to squash the errors one-by-one.

BTW, it’s better to have all your #include "..." statements in one place in your individual files instead of having them scattered all over the place (e.g. in Tomatotent.ino)

1 Like

cool, thank you. I do that now