General Environment Questions

starfire151

Active member
Excuse me if this has been asked many times before...

I'm looking for some help with the general development environment for the Arduino/Teensyduino.

I'm using both a Teensy 3.6 and Teensy 4.0 for different applications. My questions are generic for both:

1. When I compile the program I'm developing for the Teensy 3.6 making use of the built-in uSD card, I get a notice that there are multiple SD.h files and that it is choosing one (that happens to be the right one). What do I need to do to eliminate this multiple SD instance notice?
2. Is there a way to see the active libraries used in the program displayed as tabs on the development page? I've run an application with the Teensy 4.0 using the MLX90640 and there are tabs along the top of the page for the MLX90640_API.cpp and .h and the MLX90640_I2C_Driver.cpp and .h files. This is very handy to see #defines, etc.
3. How would I remove libraries not wanted for a compilation (aside from the obvious not including them in the front of the program)
4. Are the libraries loaded per program or per the development environment? In other words, if I have a program that is functional and I want to make a clone with some modifications, do I have to include the libraries again in the new program or are they already loaded into the development environment?

Thanks.
 
Re
#1: Arduino install includes some default libraries - and TeensyDuino installs Teensy specific versions. That warning is by design and unless you delete the one unused the warning will persist.
#2: The generally Arduino IDE shows tabs when the files are in the sketch folder. External libs are noted at build time in the lines noted above.
#3: The build system ignores and does not use libraries as indicated. They are generally excluded from the resultant HEX object by the linker.
#4: some few dozen libraries are available on a given development installation { 92 folders in Teensy \libraries } - based on the sketch at hand the build system dynamically includes only the code needed to resolve needed dependencies base on #include or logic within the build system.
 
Re
#1: Arduino install includes some default libraries - and TeensyDuino installs Teensy specific versions. That warning is by design and unless you delete the one unused the warning will persist.
#2: The generally Arduino IDE shows tabs when the files are in the sketch folder. External libs are noted at build time in the lines noted above.
#3: The build system ignores and does not use libraries as indicated. They are generally excluded from the resultant HEX object by the linker.
#4: some few dozen libraries are available on a given development installation { 92 folders in Teensy \libraries } - based on the sketch at hand the build system dynamically includes only the code needed to resolve needed dependencies base on #include or logic within the build system.

Thanks very much for responding so quickly.

#1: So I can safely delete or rename the Arduino libraries conflicting with the Teensy libraries? I would just rename the Arduino libraries in case of a future Arduino board project?
#2: Thanks for that. I noticed the MLX90640_*.* files were in the same folder as the source program.
#3: Thanks.
#4: Thanks, again.
 
:)
The duplicate - alternate hardware - libraries can be ignored and left in place. I've not considered taking them away - not that they are likely to be used for another board.

There is also a 'sketchbook'\libraries folder where libraries can be manually placed for something needed from github or other reason like modifying or creating them. Libraries there are given priority over others.

They will be shown the same in the console during the build. When something goes from there to updated perhaps in TeensyDuino I have a folder 'sketchbook'\librariesnot that they get moved into - perhaps if desired that would work for those other installed libraries.
 
:)
The duplicate - alternate hardware - libraries can be ignored and left in place. I've not considered taking them away - not that they are likely to be used for another board.

There is also a 'sketchbook'\libraries folder where libraries can be manually placed for something needed from github or other reason like modifying or creating them. Libraries there are given priority over others.

They will be shown the same in the console during the build. When something goes from there to updated perhaps in TeensyDuino I have a folder 'sketchbook'\librariesnot that they get moved into - perhaps if desired that would work for those other installed libraries.

Got it.

Thanks, again.
 
Back
Top