I need to choose a database for an application on an embedded linux platform.
There are many types of databases, even in regards to an embedded platform. You'll get a more specific answer, by providing more specific information. If you don't know, even just explaining your use case would narrow choices significantly. Also please remember to accept, by clicking the checkbox, once you feel your question was answered.– J. M. BeckerJan 14, 2013 at 17:40
SQLite's small size and levels of completeness, stability & speed make it a popular choice for low-resource environments, which embedded systems usually are. It is used by parts of the current iPhone, Android and Symbian phone operating systems for this reason.
You might want to add some details to your question to get more specific answers: do you know what sort of hardware specification you will be working with for instance?
BDB (libdb) has historically been the embedded database of choice for many applications, shipping with most UNIXes and used by lots of software. If you're accustomed to SQL relational databases, though, BDB is not one - it is simply a (really good) key-value store.
SQLite is a different popular embedded database. As the name implies, it is a SQL database engine, and is not in the same category of lean and compact as BDB, but gives you the power to do very different things.
What sorts of requirements are you targeting?