What's a (built) C library? More or less, it's a blob of data (the most interesting of which is usually machine code) and a bunch of entry points -- indexes into this data.
This is not exactly information rich.
34. The string is a stark data structure and everywhere it is passed there is much duplication of process. It is a perfect vehicle for hiding information. -- Alan Perlis, http://www.cs.yale.edu/homes/perlis-alan/quotes.html
So, just given a C library, you don't have a hope of, say, writing Python bindings for that library. You don't know the number and types of argument the functions take (I'm not even sure you can easily tell which entry points are functions...). To get this information, you have to look at the headers, which can be more-or-less arbitrary C and so are not the easiest things in the world to parse and get useful information out of.
In a language that's less terrified of letting things happen at runtime, you can just ask.
You're never going to be able to generate wrappers totally automatically -- there's always likely to be fun with memory management -- but it could be less of a pain.
Maybe GCC-XML is the answer.
