Bug 32791 - new glibc-devel is incompatible with old binutils
Summary: new glibc-devel is incompatible with old binutils
Status: NEW
Alias: None
Product: Sisyphus
Classification: Development
Component: glibc-devel (show other bugs)
Version: unstable
Hardware: all Linux
: P3 normal
Assignee: placeholder@altlinux.org
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-11-23 16:41 MSK by Ivan Zakharyaschev
Modified: 2018-03-13 15:13 MSK (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ivan Zakharyaschev 2016-11-23 16:41:37 MSK
$ readlink -f /usr/lib64/gcc/x86_64-alt-linux/4.9/../../../../lib64/crti.o
/usr/lib64/crti.o
$ readlink -f /usr/lib64/gcc/x86_64-alt-linux/4.9/../../../../lib64/crti.o | xargs rpm -qf
glibc-devel-2.23-alt3
$ rpm -q binutils gcc5 gcc4.9
binutils-2.24.0-alt3
gcc5-5.2.1-alt1
gcc4.9-4.9.2-alt4
$ 

For example, when running make in guile-evms sources, the following error occurs because of old binutils:


gcc -g -pipe -O2 -Werror -Wall -Wno-unused -Wno-switch -fPIC -I/usr/include/guile -I/usr/include/evms   -c -o evms.o evms.c
gcc -shared -Wl,-soname=libguile-evms.so.0 evms.o -lguile -levms -lblkid -o libguile-evms.so
/usr/bin/ld: /usr/lib64/gcc/x86_64-alt-linux/4.9/../../../../lib64/crti.o: unrecognized relocation (0x2a) in section `.init'
/usr/bin/ld: final link failed: Bad value
collect2: error: ld returned 1 exit status
make: *** [libguile-evms.so] Error 1

New glibc-devel should conflict with old binutils to avoid such situations.

Similar errors happen also when I try to use older gcc, say, gcc4.6.

This is a problem for someone who has upgraded glibc and wants to program and compile his programs. He must know that he should have ugraded binutils, too. This hint can be expressed by a Conflicts fields in glibc-devel. (This is not a problem for building packages, because then hasher is used.)
Comment 1 Dmitry V. Levin 2018-03-13 15:13:54 MSK
What's the first acceptable version of binutils then?