SD.h & Bridge.h: Problem when in the same sketch...

There's a problem I've just encountered: If SD.h and Bridge.h are declared in the same scope, the following will happen:

src\File.cpp.o: In function `File::name()':
C:\Program Files (x86)\Arduino\libraries\SD\src/File.cpp:47: multiple definition of `File::name()'
src\FileIO.cpp.o:C:\Program Files (x86)\Arduino\libraries\Bridge\src/FileIO.cpp:178: first defined here
src\File.cpp.o: In function `File::isDirectory()':
C:\Program Files (x86)\Arduino\libraries\SD\src/File.cpp:53: multiple definition of `File::isDirectory()'
src\FileIO.cpp.o:C:\Program Files (x86)\Arduino\libraries\Bridge\src/FileIO.cpp:183: first defined here
src\File.cpp.o: In function `File::write(unsigned char)':
C:\Program Files (x86)\Arduino\libraries\SD\src/File.cpp:57: multiple definition of `File::write(unsigned char)'
src\FileIO.cpp.o:C:\Program Files (x86)\Arduino\libraries\Bridge\src/FileIO.cpp:50: first defined here
src\File.cpp.o: In function `File::available()':
C:\Program Files (x86)\Arduino\libraries\SD\src/File.cpp:99: multiple definition of `File::available()'
src\FileIO.cpp.o:C:\Program Files (x86)\Arduino\libraries\Bridge\src/FileIO.cpp:131: first defined here
src\File.cpp.o: In function `File::position()':
C:\Program Files (x86)\Arduino\libraries\SD\src/File.cpp:118: multiple definition of `File::position()'
src\FileIO.cpp.o:C:\Program Files (x86)\Arduino\libraries\Bridge\src/FileIO.cpp:102: first defined here
src\File.cpp.o: In function `File::size()':
C:\Program Files (x86)\Arduino\libraries\SD\src/File.cpp:123: multiple definition of `File::size()'
src\FileIO.cpp.o:C:\Program Files (x86)\Arduino\libraries\Bridge\src/FileIO.cpp:156: first defined here
src\File.cpp.o: In function `File::operator bool()':
C:\Program Files (x86)\Arduino\libraries\SD\src/File.cpp:142: multiple definition of `File::operator bool()'
src\FileIO.cpp.o:C:\Program Files (x86)\Arduino\libraries\Bridge\src/FileIO.cpp:42: first defined here
src\File.cpp.o: In function `File::close()':
C:\Program Files (x86)\Arduino\libraries\SD\src/File.cpp:127: multiple definition of `File::close()'
src\FileIO.cpp.o:C:\Program Files (x86)\Arduino\libraries\Bridge\src/FileIO.cpp:170: first defined here
src\File.cpp.o: In function `File::seek(unsigned long)':
C:\Program Files (x86)\Arduino\libraries\SD\src/File.cpp:112: multiple definition of `File::seek(unsigned long)'
src\FileIO.cpp.o:C:\Program Files (x86)\Arduino\libraries\Bridge\src/FileIO.cpp:83: first defined here
src\File.cpp.o: In function `File::flush()':
C:\Program Files (x86)\Arduino\libraries\SD\src/File.cpp:107: multiple definition of `File::flush()'
src\FileIO.cpp.o:C:\Program Files (x86)\Arduino\libraries\Bridge\src/FileIO.cpp:138: first defined here
src\File.cpp.o: In function `File::read(void*, unsigned int)':
C:\Program Files (x86)\Arduino\libraries\SD\src/File.cpp:93: multiple definition of `File::read(void*, unsigned int)'
src\FileIO.cpp.o:C:\Program Files (x86)\Arduino\libraries\Bridge\src/FileIO.cpp:140: first defined here
src\File.cpp.o: In function `File::read()':
C:\Program Files (x86)\Arduino\libraries\SD\src/File.cpp:85: multiple definition of `File::read()'
src\FileIO.cpp.o:C:\Program Files (x86)\Arduino\libraries\Bridge\src/FileIO.cpp:65: first defined here
src\File.cpp.o: In function `File::peek()':
C:\Program Files (x86)\Arduino\libraries\SD\src/File.cpp:76: multiple definition of `File::peek()'
src\FileIO.cpp.o:C:\Program Files (x86)\Arduino\libraries\Bridge\src/FileIO.cpp:75: first defined here
src\File.cpp.o: In function `File::write(unsigned char const*, unsigned int)':
C:\Program Files (x86)\Arduino\libraries\SD\src/File.cpp:61: multiple definition of `File::write(unsigned char const*, unsigned int)'
src\FileIO.cpp.o:C:\Program Files (x86)\Arduino\libraries\Bridge\src/FileIO.cpp:54: first defined here
src\SD.cpp.o: In function `File::rewindDirectory()':
C:\Program Files (x86)\Arduino\libraries\SD\src/SD.cpp:611: multiple definition of `File::rewindDirectory()'
src\FileIO.cpp.o:C:\Program Files (x86)\Arduino\libraries\Bridge\src/FileIO.cpp:227: first defined here
src\SD.cpp.o: In function `File::openNextFile(unsigned char)':
C:\Program Files (x86)\Arduino\libraries\SD\src/SD.cpp:567: multiple definition of `File::openNextFile(unsigned char)'
src\FileIO.cpp.o:C:\Program Files (x86)\Arduino\libraries\Bridge\src/FileIO.cpp:195: first defined here

Both libs are using SD-Functions but the SD-Lib is the only one which can load pictures for the TFT. Is there a way to load a pics from the SD-cards mounted on the Yun?

Greets

The SD card is automatically mounted as /mnt/sd, so you just reference the full path to the file on the SD card using a File object (/mnt/sd/myfile), and the Bridge interface will take care of getting it for you.

There are fixes in 1.5.5 that make this more stable so make sure you upgrade if you haven't already.

Bob

bobh66 is right. You don't need the SD library to use the SD card on the yun

@Techniker
Have you found any solution?