Description
sorry if this is a dumb question, but does arduino-cli compile
forcibly recompile everything each time it is run? is there a way to speed this up by only rebuilding object files for those files that have changed?
Unless there's something wrong with my setup, this doesn't appear to be the case. Each time I run arduino-cli compile mySketch'
, I see the message Build options changed, rebuilding all
, and I can see it going through a full compile of all libraries & source files.
I've tried specifying directories for both the core & sketch builds, but it doesn't appear to be doing much. What am I missing? Is there a way to keep the build process from constantly rebuilding unchanged source files & libraries in order to speed things up?
FYI, in my case, one thing I'm seeing is that the build process finds multiple versions of diferent libraries, and informs me that it's selecting a certain version:
Build options changed, rebuilding all
Alternatives for Wire.h: [[email protected]]
ResolveLibrary(Wire.h)
-> candidates: [[email protected]]
Alternatives for LiquidCrystal_I2C.h: [NewLiquidCrystal_lib]
ResolveLibrary(LiquidCrystal_I2C.h)
-> candidates: [NewLiquidCrystal_lib]
Alternatives for TMC2130Stepper.h: [[email protected]]
ResolveLibrary(TMC2130Stepper.h)
-> candidates: [[email protected]]
Alternatives for SPI.h: [[email protected]]
ResolveLibrary(SPI.h)
-> candidates: [[email protected]]
Alternatives for Cmd.h: [Cmd]
ResolveLibrary(Cmd.h)
-> candidates: [Cmd]
Sketch uses 21946 bytes (68%) of program storage space. Maximum is 32256 bytes.
Global variables use 1419 bytes (69%) of dynamic memory, leaving 629 bytes for local variables. Maximum is 2048 bytes.
please help me figure out how to get some kind of build caching to work...