Fedora の so ファイルにシンボルバージョン付き関数を作成するにはどうすればよいでしょうか?

Fedora の so ファイルにシンボルバージョン付き関数を作成するにはどうすればよいでしょうか?

Fedora の次のバグが原因です:

http://forums.fedoraforum.org/showthread.php?t=296524

私は、zlib と libpng の独自のバージョンをコンパイルすることにしました。しかし、コンパイルした後、libcairo が新しい libpng バージョンにリンクできないことに気付きました。調査の結果、システム libpng のシンボルにシンボル バージョンが含まれていることが原因であることがわかりました。例:

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

しかし、私がコンパイルしたバージョンでは、シンボルにバージョン装飾が含まれています。

> 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

cmake、コンパイラ、リンカーでこれらのシンボル注釈を生成するにはどうすればよいでしょうか?

関連情報