Debido al siguiente error en Fedora:
http://forums.fedoraforum.org/showthread.php?t=296524
Decidí compilar mis propias versiones de zlib y libpng. Pero después de hacerlo, me di cuenta de que libcairo no podía vincularse a mi nueva versión de libpng. Algunas investigaciones mostraron que la razón era que los símbolos en el sistema libpng contienen la versión del símbolo, por ejemplo:
readelf -Ws /usr/lib/libpng16.so.16.6.0 | awk '{print $8}' | grep -i version
png_access_version_number@@PNG16_0
png_get_header_version@@PNG16_0
pero en mi versión compilada los símbolos contienen la decoración de la versión:
> readelf -Ws /usr/local/lib/libpng16.so.16.6.0 | awk '{print $8}' | grep -i version
png_get_header_version
png_user_version_check
png_access_version_number
¿Cómo puedo hacer que cmake, el compilador y el vinculador generen estas anotaciones de símbolos?