nm -D /lib32/libc.so.6 | grep '\<fopen\>'
0005d0c0 T fopen
00109750 T fopen
readelf -s /lib32/libc.so.6 | egrep '0005d0c0|00109750'
181: 0005d0c0 50 FUNC GLOBAL DEFAULT 12 fopen@@GLIBC_2.1
182: 00109750 136 FUNC GLOBAL DEFAULT 12 fopen@GLIBC_2.0
679: 0005d0c0 50 FUNC GLOBAL DEFAULT 12 _IO_fopen@@GLIBC_2.1
680: 00109750 136 FUNC GLOBAL DEFAULT 12 _IO_fopen@GLIBC_2.0
ここに私の質問があります:
/lib32/libc.so.6に2つのfopenシンボルが含まれているのはなぜですか?同じターゲットファイル内の同一のシンボルは禁止されるべきですよね?
readelf -sがfopenの代わりにfopen@@GLIBC_2.1とfopen@GLIBC_2.0をダンプするのはなぜですか?
ありがとう