If you do not want to bother with this or do not want shared libraries, you can configure gEDA not to build the shared libraries. The developers decided a long time ago that having too many dependancies on external libraries is not a good idea. Especially since gEDA is trying to achieve cross Unix platform portability. They are inefficient and lack this or that. A text file is so easy to parse and you get to use all those unix utilities to manipulate them.
Binary files are highly non-portable.
This is too large a tradeoff. All gEDA file formats are fully documented. If you find a gEDA file format which is not documented, let me know.