This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Require binutils 2.20 or later to build glibc
- From: "Joseph S. Myers" <joseph at codesourcery dot com>
- To: libc-alpha at sourceware dot org
- Date: Fri, 24 Feb 2012 22:24:43 +0000 (UTC)
- Subject: Require binutils 2.20 or later to build glibc
I tested building glibc on x86_64 with different binutils versions. 2.22,
2.21.1a and 2.20.1a worked (I didn't test if the resulting glibc worked,
but it built). 2.19.1a first failed with the configure logic problem
described in <http://sourceware.org/ml/libc-alpha/2012-02/msg00603.html>
meaning multi-arch was enabled though unsupported; with that patch or
--disable-multi-arch, the build still failed, because
gnu_indirect_function is used unconditionally for x86_64, e.g. in
sysdeps/unix/sysv/linux/x86_64/time.c, not just for multi-arch (the case
there is an IFUNC depending on kernel vDSO availability).
So releases before 2.20 won't work for x86_64, which means building with
older versions is likely not to be particularly well tested even if there
are other architectures for which a build succeeds. So I propose 2.20 as
a minimum version requirement for binutils for configure to enforce and
the installation instructions to document.
binutils 2.20 was released in October 2009.
2012-02-24 Joseph Myers <joseph@codesourcery.com>
* configure.in (AS, LD): Require binutils 2.20 or later.
* configure: Regenerated.
* manual/install.texi (Tools for Compilation): Give binutils 2.20
as required minimum version.
* INSTALL: Regenerated.
diff --git a/configure.in b/configure.in
index af42c8a..38eb1a1 100644
--- a/configure.in
+++ b/configure.in
@@ -921,13 +921,13 @@ AC_PROG_LN_S
LIBC_PROG_BINUTILS
AC_SUBST(MIG)dnl Needed by sysdeps/mach/configure.in
-# Accept binutils 2.13 or newer.
+# Accept binutils 2.20 or newer.
AC_CHECK_PROG_VER(AS, $AS, --version,
[GNU assembler.* \([0-9]*\.[0-9.]*\)],
- [2.1[3-9]*|2.1[0-9][0-9]*|2.[2-9][0-9]*|[3-9].*|[1-9][0-9]*], AS=: critic_missing="$critic_missing as")
+ [2.1[0-9][0-9]*|2.[2-9][0-9]*|[3-9].*|[1-9][0-9]*], AS=: critic_missing="$critic_missing as")
AC_CHECK_PROG_VER(LD, $LD, --version,
[GNU ld.* \([0-9][0-9]*\.[0-9.]*\)],
- [2.1[3-9]*|2.1[0-9][0-9]*|2.[2-9][0-9]*|[3-9].*|[1-9][0-9]*], LD=: critic_missing="$critic_missing ld")
+ [2.1[0-9][0-9]*|2.[2-9][0-9]*|[3-9].*|[1-9][0-9]*], LD=: critic_missing="$critic_missing ld")
# These programs are version sensitive.
AC_CHECK_TOOL_PREFIX
diff --git a/manual/install.texi b/manual/install.texi
index 1656c5e..8e99e9f 100644
--- a/manual/install.texi
+++ b/manual/install.texi
@@ -331,7 +331,7 @@ floating-point support that may be triggered by the math library.
Check the FAQ for any special compiler issues on particular platforms.
@item
-GNU @code{binutils} 2.15 or later
+GNU @code{binutils} 2.20 or later
You must use GNU @code{binutils} (as and ld) to build the GNU C library.
No other assembler or linker has the necessary functionality at the
--
Joseph S. Myers
joseph@codesourcery.com