Newer expat versions use different declarations of the following functions: static void _svg_parser_sax_start_element (); static void _svg_parser_sax_end_element (); static void _svg_parser_sax_characters (); We need to patch the libsvg source to not follow into a build error like "static declaration of 'foo' follows non-static declaration" and use the functions from the expat library instead from the libsvg source. Patch based on http://oe-lite.org/redmine/projects/xorg/repository/revisions/c4df7951e846e1be718f37f2455696a1d0861f3d/entry/recipes/cairo/libsvg-0.1.4/gcc4_and_expat.patch Signed-off-by: Carsten Schoenert diff -bur libsvg-0.1.4~orig/src/svg_parser_expat.c libsvg-0.1.4/src/svg_parser_expat.c --- libsvg-0.1.4~orig/src/svg_parser_expat.c 2005-02-14 11:26:26.000000000 -0600 +++ libsvg-0.1.4/src/svg_parser_expat.c 2006-02-10 21:58:20.000000000 -0600 @@ -30,6 +30,7 @@ #include "svgint.h" #include "svg_hash.h" +#ifndef LIBSVG_EXPAT static void _svg_parser_sax_start_element (void *closure, const XML_Char *name, @@ -43,6 +44,7 @@ _svg_parser_sax_characters (void *closure, const XML_Char *ch, int len); +#endif static void