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 [email protected]@GLIBC_2.1
182: 00109750 136 FUNC GLOBAL DEFAULT 12 [email protected]_2.0
679: 0005d0c0 50 FUNC GLOBAL DEFAULT 12 [email protected]@GLIBC_2.1
680: 00109750 136 FUNC GLOBAL DEFAULT 12 [email protected]_2.0
вот мой вопрос:Почему у /lib32/libc.so.6 есть два символа «fopen»?
почему /lib32/libc.so.6 имеет два Еореп символа в нем? идентичный символ в том же файле цели должен быть запрещен, правильно?
Почему readelf -s выгружает fopen @@ GLIBC_2.1 и [email protected]_2.0 вместо fopen?
Благодаря
Благодарю gby, не могли бы вы привести пример этого, спасибо :) – camino
Лучший ресурс на планете за что-либо относительно общей библиотеки - это «Как писать общие библиотеки» Ульриха Дреппера: http://people.redhat.com/ drepper/dsohowto.pdf – gby
Спасибо большое! :) – camino