This is the mail archive of the binutils@sourceware.org mailing list for the binutils 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]

Re: Linux: Variable dynamic linking


Martin Rosenau <martin@rosenau-ka.de> writes:

> Are there other possibilities to get rid of the "portable application"
> problem?

The current GNU/Linux approach is to assume ld-linux.so.2 and
/lib/libc.so.6.  There is no current expectation that those version
numbers will ever be changed.  The glibc maintainers then use symbol
versions to ensure backward compatibility, in the sense that an
application linked against version N of glibc will always work if
version N+1 is found at runtime.

You seem to be concerned to find an approach that will work on a very
old system which still uses ld-linux.so.1 and /lib/libc.so.5.  That is
an interesting idea but does not seem to me to be a useful one, as all
such systems must be very old.

In other words, I think this problem is basically solved for C.

The issue with C++ programs is much more complex, because of the
inlining of class methods.  I have not yet seen a good proposal for
adjusting libstdc++.so to C++0x while continuing to provide backward
compatibility for C++98.  If you are interested in tackling issues in
this area, I would suggest that you try to work out a solution for C++.

Ian


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