yeni @@ __isoc99_sscanf ile libc.so GLIBC_2.7 simgesi oluşturmak o glibc'nin 2.7'den ihtiyacı olan tek simge ben takma __sscanf olarak bu sembol() ile küçük tek işlevi "kütüphane" yazmak istiyorumgcc/ld bunu çalıştırmayı denediğinizde bir hata yapar ben bir uygulama var glibc.2.6
[email protected]@GLIBC_2.7
olduğunu
nasıl gcc/ld ile yapabilirsiniz?
Benim varyantint [email protected]@GLIBC_2.7(const char *, const char *, ...) __attribute__((alias("__sscanf")));
ikinci benim varyant sembolleri "@@" çünkü kabul edilmez
#include <stdarg.h>
int __isoc99_sscanf1(const char *a, const char *b, va_list args)
{
int i;
va_list ap;
va_copy(ap,args);
i=sscanf(a,b,ap);
va_end(ap);
return i;
}
// __asm__(".symver __isoc99_sscanf,[email protected]@GLIBC_2.7");
__asm__(".symver __isoc99_sscanf1,[email protected]@GLIBC_2.7");
ama @@ GLIBC_2.7 __isoc99_sscanf sembolü için not found sürüm düğümü" ile biter msgstr "bağlayıcıdan hata.
Uygulama bir ikili, bu yüzden zaten __isoc99_scanf var – osgx