This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: Should a newer ld.so work with older libc.so (and the other way around)?
- From: Markus Trippelsdorf <markus at trippelsdorf dot de>
- To: Andrew Pinski <pinskia at gmail dot com>
- Cc: GNU C Library <libc-alpha at sourceware dot org>
- Date: Tue, 14 Feb 2017 09:39:20 +0100
- Subject: Re: Should a newer ld.so work with older libc.so (and the other way around)?
- Authentication-results: sourceware.org; auth=none
- References: <CA+=Sn1mni4H=gtgVOtRgY6D0M7ibcaFM26bL4djohSV1p2dQUw@mail.gmail.com>
On 2017.02.13 at 23:41 -0800, Andrew Pinski wrote:
> Right now there seems like there has been a recent change which broke
> both ways. This happens on AARCH64-linux-gnu.
>
> For the newer ld.so I get:
> apinski@apinski-t99:~/src/glibc/objdir2$ ./elf/ld.so `which true`
> /bin/true: error while loading shared libraries:
> __kernel_gettimeofday: invalid mode for dlopen(): Invalid argument
>
> I am suspecting this caused that:
> 2015-05-26 Adhemerval Zanella <adhemerval.zanella@linaro.org>
>
> * sysdeps/unix/sysv/linux/aarch64/gettimeofday.c (HAVE_VSYSCALL):
> Define and include sysdep-vdso.h.
> * sysdeps/unix/sysv/linux/s390/gettimeofday.c (HAVE_VSYSCALL):
> Likewise.
> * sysdeps/unix/sysv/linux/tile/gettimeofday.c (HAVE_VSYSCALL):
> Likewise.
> ....
>
>
> With the newer libc.so (without the newer ld.so):
>
> apinski@apinski-t99:~/src/glibc/objdir2$ LD_LIBRARY_PATH=. ls
> ls: relocation error: /lib/aarch64-linux-gnu/libpthread.so.0: symbol
> __libc_dl_error_tsd, version GLIBC_PRIVATE not defined in file
> libc.so.6 with link time reference
>
> And this one was caused by:
> 2016-11-30 Florian Weimer <fweimer@redhat.com>
>
> [BZ #16628]
>
>
> Note I also get some crashes weird due to ld.so and libc.so not being
> compatible too.
>
> If this is supposed to work, it means the 2.24 and 2.25 releases are
> ABI incompatible with 2.23 release.
No, this supposed not to work at all. See:
https://sourceware.org/glibc/wiki/FAQ#How_do_I_install_all_of_the_GNU_C_Library_project_libraries_that_I_just_built.3F
--
Markus