Compilation process, libraries used

I want to under stand, how Arduino compiles and uses the library reference.

Compiling process found two libraries SD@1.2.3 SD@2.0.0 then next line is not clear which library is being used.

Appreciate the feed back.

Following is sample

Detecting libraries used...
...
Alternatives for SD.h: [SD@1.2.4 SD@2.0.0]
ResolveLibrary(SD.h)
-> candidates: [SD@1.2.4 SD@2.0.0]
...
Alternatives for FS.h: [FS@2.0.0]
ResolveLibrary(FS.h)
-> candidates: [FS@2.0.0]
...
Alternatives for SPI.h: [SPI@2.0.0]
ResolveLibrary(SPI.h)
-> candidates: [SPI@2.0.0]

usually there is a mention of the library used if you look at what's compiled (probably within a -I flag of the compile line)

can you post your test code?
which version of the IDE?


also - how does this relate to the "storage" category ?

It is my mistake didn't change storage topic. How can i change it now?
IDE : 2.1.0

As given above which library is used while compiling.
...
Alternatives for SD.h: [SD@1.2.4 SD@2.0.0]
ResolveLibrary(SD.h)
-> candidates: [SD@1.2.4 SD@2.0.0]
...

look in the part you don't provide (in the ...) you should see a path for what has been selected

click on the little pencil at the right of your post title

then use the popup to select another category and click the green tick mark button

may be move it to the IDE 2.x category

Hi @rasheeda

The information is provided near the end of the verbose compilation output. You should see a summary with this form:

Multiple libraries were found for "SPI.h"
  Used: C:\Users\per\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\libraries\SPI
  Not used: C:\Users\per\Documents\Arduino\libraries\SPI
Using library SPI at version 1.0 in folder: C:\Users\per\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\libraries\SPI 

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.