Replies: 1 comment
-
Thanks for shedding light on possible points in this issue. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
First of all. There is not inherent reason why Sloeber should take more space than Arduino IDE.
There are however bugs/shortcomings/differences/misunderstandings that may lead to having different sizes (probably bigger as Arduino is very focused on small hex size) but "normally" they should be the same size.
So here is a list of things I know can/will lead to different sizes between Sloeber and Arduino IDE. (in no particular order)
Of those I think 4,5 and 7 need some extra info.
4 seems to happen more with more exotic boards (whatever that may mean 😜 ). For instance boards that have wifi may call in the wrong Ethernet library (the common not from the core) and go all wild from there.
This happens frequently at project creation. Once things have calmed down Sloeber usually picks the proper library.
Deleting libraries 1 by 1 may not work as Sloeber may add them while removing.
Best option is to delete the libraries folder. Sloeber will recreate the folder and -hopefully- do better this time. If Sloeber keeps adding unwanted libraries you can opt to disable the automatic library adding functionality in the properties or exclude the folder using the right click the folder ->resource configurations->exclude from build
Note that all library folders are eclipse links so nothing gets deleted from disk.
5 Sloeber does not implement all hooks described in the Arduino framework
Though unlikely this would lead to a size difference it should be noted that currently Sloeber does not support all hooks defined in the arduino framework. Here is a list of the currently (un)supported hooks #927 (comment)
If the sketch is based on a boards from a platform where the platform.txt contains any of the unsupported hooks (and the build works fine) that has a good chance of being the root cause of the size difference.
7 The known compile differences between Arduino IDE and Sloeber
Next to the above mentioned differences here are the remaining.
-Sloeber uses the same build command for the core as for the sketch and Libraries where Arduino IDE does not.
The difference is in the set of include folders. Arduino IDE does not add the include folders of the libraries to the command for core files.
-Sloeber builds the archive in one go where Arduino IDE does it object file by object file.
There is no reason the think that would lead to problems if the core code is up to standards (This gave problems once because a method was defined 2 times in the core. In the Arduino IDE the first one was overwritten where the Sloeber implementation gave a warning)
Beta Was this translation helpful? Give feedback.
All reactions