Names that start with an underscore like "__DBD_H__" and "__DBI_DEV_H__" should be avoided. A few parts of your source files do not fit to the expected naming conventions of the C language standard.
http://www.open-std.org/JTC1/SC22/WG14/www/docs/n1124.pdf
http://en.wikipedia.org/wiki/Reserved_identifier
http://libdbi.cvs.sourceforge.net/viewvc/libdbi/libdbi/include/dbi/dbd.h?revision=1.31&view=markup
http://libdbi.cvs.sourceforge.net/viewvc/libdbi/libdbi/include/dbi/dbi-dev.h?revision=1.46&view=markup
Could you please point me to the exact location in the standard which does not permit the usage of underscores in the mentioned way? It's a 500+ page tome, after all, and a quick search for "underscore" was inconclusive.
The book "The New C Standard: An Economic and Cultural Commentary" by Derek M. Jones might also help.
http://www.knosof.co.uk/cbook/
Would you like to look at the section "7.1.3 Reserved identifiers" in the referenced draft?