#FFIs that don't make use of the compiler tend to lead to buggy (including security vulnerabilties), non-portable wrappers. In fact, I'd say they make it nearly impossible to write non-buggy, portable wrappers because the only way to do it right is to read the header files and understand what the compiler is going to do on every platform.
In short, what I'm trying to say is that SWIG, Cython, etc are infinitely better for making wrappers than ctypes or any ctypes-like FFI.
@freakazoid Also with the upcomming CHICKEN 5, cross compilation and static binaries have gotten even easier!