I can now successfully compile cairo-1.0.2,
fontconf-2.3.93, libxml2-2.6.23, and a few more to shared libraries.
Though I have one question regarding
the -no-undefined flag.
Is it possible that a lot of packages
which actually don't have undefined symbols in the resulting shared library
don't set this flag at all?
One of these packages is glib, for instance.
Once I added the -no-undefined to makefile.am, it built correctly. So I
guess this is something I should bug the glib people instead?
Anyway, I will do a few more tests and
send a patch once everything is working correctly.