|
From: | Assaf Gordon |
Subject: | building old coreutils versions on new glibc systems |
Date: | Thu, 1 Aug 2019 20:47:56 -0600 |
User-agent: | Mutt/1.11.4 (2019-03-13) |
Hello, While trying to find out the first version with the 'seq' bug (my previous email), I realized it has become quite hard to build old coreutils version on newer glibc system. In particular: 1. At some point 'gets' was removed from glibc, but old sources refer it. 2. Older gnulib used internal glibc symbols (libio.h) and the detection method changed (_IO_ftrylockfile vs _IO_EOF_SEEN). See: https://git.sv.gnu.org/cgit/gnulib.git/commit/?id=74d9d6a2 3. Old coreutils defined 'futimens','tee','eaccess' functions which conflict with later glibc functions of same name. In short, it's not trivial to download a tarball from https://ftp.gnu.org/gnu/coreutils/ and build it on modern systems (and it seems even more complicated to build from git). The attached patches enable building old tarballs on modern systems (tested on Debian 10 with GLIBC 2.28-10, gcc 8.3.0-6). The sequence should be: wget https://ftp.gnu.org/gnu/coreutils/coreutils-5.97.tar.gz tar -xf coreutils-5.97.tar.gz cd coreutils-5.97 patch -p1 < ../coreutils-5.97-on-glibc-2.28.patch ./configure make Coreutils Versions Patch file 5.0 coreutils-5.0-on-glibc-2.28.patch 5.97 to 6.9 coreutils-5.97-on-glibc-2.28.patch 6.10 coreutils-6.10-on-glibc-2.28.patch 6.11 coreutils-6.11-on-glibc-2.28.patch 6.12 coreutils-6.12-on-glibc-2.28.patch 7.2 to 8.3 coreutils-7.2-on-glibc-2.28.patch 8.4 to 8.12 coreutils-8.4-on-glibc-2.28.patch 8.13 to 8.16 coreutils-8.13-on-glibc-2.28.patch 8.17 coreutils-8.17-on-glibc-2.28.patch 8.18 to 8.23 coreutils-8.18-on-glibc-2.28.patch 8.24 to 8.29 coreutils-8.24-on-glibc-2.28.patch 8.30 and newer [builds without patching] Hope this helps someone. regards, - assaf
coreutils-5.0-on-glibc-2.28.patch
Description: Text document
coreutils-5.97-on-glibc-2.28.patch
Description: Text document
coreutils-6.10-on-glibc-2.28.patch
Description: Text document
coreutils-6.11-on-glibc-2.28.patch
Description: Text document
coreutils-6.12-on-glibc-2.28.patch
Description: Text document
coreutils-7.2-on-glibc-2.28.patch
Description: Text document
coreutils-8.4-on-glibc-2.28.patch
Description: Text document
coreutils-8.13-on-glibc-2.28.patch
Description: Text document
coreutils-8.17-on-glibc-2.28.patch
Description: Text document
coreutils-8.18-on-glibc-2.28.patch
Description: Text document
coreutils-8.24-on-glibc-2.28.patch
Description: Text document
[Prev in Thread] | Current Thread | [Next in Thread] |