The problem is the use of structure member names 'true' and 'false'. The compiler on os x does not seem to like these - perhaps they are macros. Just change all occurrences of 'true' and 'false' to xtrue and xfalse to fix or upgrade to DBD::ODBC 1.16 where this is fixed.