This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

binary compatibility issues


Hi,

I am developing applicaitons on a glibc-2.3.4/gcc-3.4.3 based system. I would 
like to make the binaries compatible with systems based on older versions of 
glibc, perhaps as old as 2.2.4. When I compile my application against glibc-
2.3.4, I get dependencies on about a dozen symbols that have version number 
GLIBC_2.3 or greater. Using nm, I can see that these symbols also have versions 
<GLIBC_2.3 within the glibc library. Can anyone suggest a way that I can remove 
the dependency on any GLIBC_2.3.x, so my application only requires 
GLIBC_2.2.4?

I tried to build glibc-2.2.4 with gcc-3.4.3 so I can link against that instead, 
but the configure script informed me that building that version of glibc with a 
gcc 3.x compiler will make binaries that are not compatible with other versions.

I read about symbol version scripts that can be passed to the linker, but I 
can't figure out how to use one to force symbols in my object files to link 
against particular versions of symbols in the glibc library. I realize that the 
symbol versions have changed for a good reason and I probably shouldn't be 
trying to do this, however, it apears that the functions that I am calling (eg 
pthread_cond_init) have not had their declarations changed so the older 
versions might work.

Thanks in advance for any help you can provide!

Adam


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]