I have an application, which does a error when I try to run it:
/lib/libc.so.6: version `GLIBC_2.7' not found But the only symbol it needs from glibc 2.7 is
__isoc99_sscanf@@GLIBC_2.7 I want to write a small single function "library" with this symbol as alias to __sscanf()
How can I do this with gcc/ld?
My variant is not accepted because "@@" symbols
int __isoc99_sscanf@@GLIBC_2.7(const char *, const char *, ...) __attribute__((alias("__sscanf"))); second my variant is
#include 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,__isoc99_sscanf@@GLIBC_2.7"); __asm__(".symver __isoc99_sscanf1,__isoc99_sscanf@@GLIBC_2.7"); but it ends with "version node not found for symbol __isoc99_sscanf@@GLIBC_2.7" error from linker.