Hi! As discussed in <https://gcc.gnu.org/PR79543>:
| [...] target | libraries [...] conditionally use certain linker features, depending on linker | version numbers. For example, linker version scripts in libgomp; see | LIBGOMP_BUILD_VERSIONED_SHLIB, LIBGOMP_BUILD_VERSIONED_SHLIB_GNU usage in | libgomp/Makefile.am, which are defined in libgomp/acinclude.m4 based on the | enable_symvers value, which is set by some logic depending on "ld --version" | output. Looking at one specific build's libgomp/config.log, I see: | | [...] | configure:16132: checking if the linker ([...]/gcc/collect-ld) is GNU ld | configure:16147: result: yes | [...] | configure:16389: WARNING: === Linker version 1125 is too old for | configure:16391: WARNING: === full symbol versioning support in this release of GCC. | configure:16393: WARNING: === You would need to upgrade your binutils to version | configure:16395: WARNING: === 21400 or later and rebuild GCC. | configure:16404: WARNING: === Symbol versioning will be disabled. | [...] | | Now, what is this "1125" linker version? | | $ [...]/gcc/collect-ld --version | GNU ld (Sourcery CodeBench ([...]) Lite 2015.11-[...]) 2.25.51 | | ..., and then apply the "magic" used in libgomp/acinclude.m4 to compute | libgomp_gnu_ld_version: | | $ [...]/gcc/collect-ld --version | sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q' | awk -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }' | 1125 | | "1125" instead of the expected "22551". That's pretty weird, and I suppose it | may be causing all kinds of "interesting" issues, when using a linker that has | been configured to override/augment its version string? Specifically, it's the additional set of nested parens that is confusing the sed command. | Joseph told me that "the correct logic for finding the version number is to | take everything after the last space on the first line of the output, as per | the GNU Coding Standards. See here: <https://www.gnu.org/prep/standards/html_node/_002d_002dversion.html>: "[...] the version number proper starts after the last space. [...]" | (It's possible some very old binutils versions may | not have properly formatted output; my view is that each GCC version should | have a minimum corresponding binutils version, no more than say five years old, | for targets using GNU binutils.)" (Agreed. That's for another day.) | Yet better, obviously, would be to not rely on such version-based decisions at | all. (That, too.) | (Hopefully, similar parsing is not also being done for "as --version", or other | tools (That, too; not verified now.) | and this was just a one-off problem, possibly originally introduced in | libstdc++-v3/acinclude.m4, 15 years ago, and the copied from there to other | target libraries? I haven't looked in detail.) (Also, I don't know what the GNU Conding Standards described, 15 years ago.) | (For reference, this is the root cause for the issue reported in | <http://mid.mail-archive.com/6351bfaf-d64e-5f73-9749-78b469dba5fa@mentor.com>.) In addition to that libgomp example, the problem can be observed for libstdc++ in the following existing test cases libgomp.oacc-c++/../libgomp.oacc-c-c++-common/context-1.c, libgomp.oacc-c++/../libgomp.oacc-c-c++-common/context-2.c, libgomp.oacc-c++/../libgomp.oacc-c-c++-common/context-3.c, libgomp.oacc-c++/../libgomp.oacc-c-c++-common/context-4.c, and libgomp.oacc-c++/../libgomp.oacc-c-c++-common/host_data-1.c. Trying to link in cuBLAS (these require a nvptx offloading configuration), these FAIL to compile: /usr/lib/x86_64-linux-gnu/libcublas.so: undefined reference to `operator delete[](void*)@GLIBCXX_3.4' /usr/lib/x86_64-linux-gnu/libcublas.so: undefined reference to `operator new[](unsigned long)@GLIBCXX_3.4' Applying the following patch (that is, simplying the sed command), makes the problem go away: -sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` +sed -e 's/GNU gold /GNU ld /;s/GNU ld .* \(.*\)/\1/; q'` In one specific build, this causes the following changes: x86_64-none-linux-gnu/libatomic/config.log: [...] -configure:15071: WARNING: === Linker version 1125 is too old for -configure:15073: WARNING: === full symbol versioning support in this release of GCC. -configure:15075: WARNING: === You would need to upgrade your binutils to version -configure:15077: WARNING: === 21400 or later and rebuild GCC. -configure:15086: WARNING: === Symbol versioning will be disabled. -configure:15136: versioning on shared library symbols is no +configure:15136: versioning on shared library symbols is gnu [...] x86_64-none-linux-gnu/libgomp/config.log: [...] -configure:16458: WARNING: === Linker version 1125 is too old for -configure:16460: WARNING: === full symbol versioning support in this release of GCC. -configure:16462: WARNING: === You would need to upgrade your binutils to version -configure:16464: WARNING: === 21400 or later and rebuild GCC. -configure:16473: WARNING: === Symbol versioning will be disabled. [...] -configure:16550: versioning on shared library symbols is no +configure:16550: versioning on shared library symbols is gnu [...] x86_64-none-linux-gnu/libstdc++-v3/config.log: [...] configure:53843: checking for ld version -configure:53854: result: 1125 +configure:53854: result: 22551 +configure:53881: checking for ld that supports -Wl,--gc-sections +configure:53899: [...] +configure:53899: $? = 0 +configure:53920: result: yes [...] -configure:79256: WARNING: === Linker version 1125 is too old for -configure:79258: WARNING: === full symbol versioning support in this release of GCC. -configure:79260: WARNING: === You would need to upgrade your binutils to version -configure:79262: WARNING: === 21400 or later and rebuild GCC. -configure:79264: WARNING: === Symbol versioning will be disabled. [...] -configure:79350: versioning on shared library symbols is no +configure:79350: versioning on shared library symbols is gnu [...] +configure:80758: checking for first version to support std::exception_ptr +configure:80795: result: 4.6.0 [...] x86_64-none-linux-gnu/libstdc++-v3/Makefile: SECTION_FLAGS = -ffunction-sections -fdata-sections -SECTION_LDFLAGS = +SECTION_LDFLAGS = -Wl,--gc-sections -SYMVER_FILE = config/abi/pre/none.ver +SYMVER_FILE = config/abi/pre/gnu.ver x86_64-none-linux-gnu/libstdc++-v3/config.h: /* Define to 1 if GCC 4.6 supported std::exception_ptr for the target */ -/* #undef HAVE_EXCEPTION_PTR_SINCE_GCC46 */ +#define HAVE_EXCEPTION_PTR_SINCE_GCC46 1 /* Define to 1 if you have the <execinfo.h> header file. */ #define HAVE_EXECINFO_H 1 @@ -405,7 +405,7 @@ /* Define to 1 if the target runtime linker supports binding the same symbol to different versions. */ -/* #undef HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT */ +#define HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT 1 /* Define to 1 if you have the <sys/filio.h> header file. */ /* #undef HAVE_SYS_FILIO_H */ @@ -842,13 +842,13 @@ #define _GLIBCXX_STDIO_SEEK_END 2 /* Define to use symbol versioning in the shared library. */ -/* #undef _GLIBCXX_SYMVER */ +#define _GLIBCXX_SYMVER 1 /* Define to use darwin versioning in the shared library. */ /* #undef _GLIBCXX_SYMVER_DARWIN */ /* Define to use GNU versioning in the shared library. */ -/* #undef _GLIBCXX_SYMVER_GNU */ +#define _GLIBCXX_SYMVER_GNU 1 /* Define to use GNU namespace versioning in the shared library. */ /* #undef _GLIBCXX_SYMVER_GNU_NAMESPACE */ Pending testing, I propose to commit the following patch to trunk, and similar for gcc-7-branch, and gcc-6-branch. If approving this, please respond with "Reviewed-by: NAME <EMAIL>" so that your effort will be recorded. See <https://gcc.gnu.org/wiki/Reviewed-by>. commit 9f6652fe67efbde9da3ac74e81acc7776fc6a8e6 Author: Thomas Schwinge <tho...@codesourcery.com> Date: Wed Oct 18 15:24:46 2017 +0200 [PR other/79543] Fix GNU ld --version scanning to conform to the GNU Coding Standards libatomic/ PR other/79543 * acinclude.m4 (LIBAT_CHECK_LINKER_FEATURES): Fix GNU ld --version scanning to conform to the GNU Coding Standards. * configure: Regenerate. libffi/ PR other/79543 * acinclude.m4 (LIBAT_CHECK_LINKER_FEATURES): Fix GNU ld --version scanning to conform to the GNU Coding Standards. * configure: Regenerate. libgomp/ PR other/79543 * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Fix GNU ld --version scanning to conform to the GNU Coding Standards. * configure: Regenerate. libitm/ PR other/79543 * acinclude.m4 (LIBITM_CHECK_LINKER_FEATURES): Fix GNU ld --version scanning to conform to the GNU Coding Standards. * configure: Regenerate. libstdc++-v3/ PR other/79543 * acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Fix GNU ld --version scanning to conform to the GNU Coding Standards. * configure: Regenerate. --- libatomic/acinclude.m4 | 4 ++-- libatomic/configure | 2 +- libffi/acinclude.m4 | 4 ++-- libffi/configure | 2 +- libgomp/acinclude.m4 | 2 +- libgomp/configure | 2 +- libitm/acinclude.m4 | 2 +- libitm/configure | 2 +- libstdc++-v3/acinclude.m4 | 2 +- libstdc++-v3/configure | 22 +++++++++++----------- 10 files changed, 22 insertions(+), 22 deletions(-) diff --git libatomic/acinclude.m4 libatomic/acinclude.m4 index 383218f..6a3c5c5 100644 --- libatomic/acinclude.m4 +++ libatomic/acinclude.m4 @@ -336,7 +336,7 @@ AC_DEFUN([LIBAT_CHECK_LINKER_FEATURES], [ fi changequote(,) ldver=`$LD --version 2>/dev/null | - sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` + sed -e 's/GNU gold /GNU ld /;s/GNU ld .* \(.*\)/\1/; q'` changequote([,]) libat_gnu_ld_version=`echo $ldver | \ $AWK -F. '{ if (NF<3) [$]3=0; print ([$]1*100+[$]2)*100+[$]3 }'` @@ -438,7 +438,7 @@ AC_DEFUN([LIBAT_CHECK_LINKER_FEATURES], [ fi changequote(,) ldver=`$LD --version 2>/dev/null | - sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` + sed -e 's/GNU gold /GNU ld /;s/GNU ld .* \(.*\)/\1/; q'` changequote([,]) libat_gnu_ld_version=`echo $ldver | \ $AWK -F. '{ if (NF<3) [$]3=0; print ([$]1*100+[$]2)*100+[$]3 }'` diff --git libatomic/configure libatomic/configure index e88a7b8..7d47525 100755 --- libatomic/configure +++ libatomic/configure @@ -14873,7 +14873,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld fi ldver=`$LD --version 2>/dev/null | - sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` + sed -e 's/GNU gold /GNU ld /;s/GNU ld .* \(.*\)/\1/; q'` libat_gnu_ld_version=`echo $ldver | \ $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'` diff --git libffi/acinclude.m4 libffi/acinclude.m4 index 270dadf..0f2c1ea 100644 --- libffi/acinclude.m4 +++ libffi/acinclude.m4 @@ -178,7 +178,7 @@ AC_DEFUN([LIBAT_CHECK_LINKER_FEATURES], [ fi changequote(,) ldver=`$LD --version 2>/dev/null | - sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` + sed -e 's/GNU gold /GNU ld /;s/GNU ld .* \(.*\)/\1/; q'` changequote([,]) libat_gnu_ld_version=`echo $ldver | \ $AWK -F. '{ if (NF<3) [$]3=0; print ([$]1*100+[$]2)*100+[$]3 }'` @@ -280,7 +280,7 @@ AC_DEFUN([LIBAT_CHECK_LINKER_FEATURES], [ fi changequote(,) ldver=`$LD --version 2>/dev/null | - sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` + sed -e 's/GNU gold /GNU ld /;s/GNU ld .* \(.*\)/\1/; q'` changequote([,]) libat_gnu_ld_version=`echo $ldver | \ $AWK -F. '{ if (NF<3) [$]3=0; print ([$]1*100+[$]2)*100+[$]3 }'` diff --git libffi/configure libffi/configure index 74b747b..f82fe11 100755 --- libffi/configure +++ libffi/configure @@ -16167,7 +16167,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld fi ldver=`$LD --version 2>/dev/null | - sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` + sed -e 's/GNU gold /GNU ld /;s/GNU ld .* \(.*\)/\1/; q'` libat_gnu_ld_version=`echo $ldver | \ $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'` diff --git libgomp/acinclude.m4 libgomp/acinclude.m4 index d43aa88..d9d9da8 100644 --- libgomp/acinclude.m4 +++ libgomp/acinclude.m4 @@ -153,7 +153,7 @@ AC_DEFUN([LIBGOMP_CHECK_LINKER_FEATURES], [ fi changequote(,) ldver=`$LD --version 2>/dev/null | - sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` + sed -e 's/GNU gold /GNU ld /;s/GNU ld .* \(.*\)/\1/; q'` changequote([,]) libgomp_gnu_ld_version=`echo $ldver | \ $AWK -F. '{ if (NF<3) [$]3=0; print ([$]1*100+[$]2)*100+[$]3 }'` diff --git libgomp/configure libgomp/configure index b7e9f40..efcf3f5 100755 --- libgomp/configure +++ libgomp/configure @@ -16256,7 +16256,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld fi ldver=`$LD --version 2>/dev/null | - sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` + sed -e 's/GNU gold /GNU ld /;s/GNU ld .* \(.*\)/\1/; q'` libgomp_gnu_ld_version=`echo $ldver | \ $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'` diff --git libitm/acinclude.m4 libitm/acinclude.m4 index c81b3e9..7c26756 100644 --- libitm/acinclude.m4 +++ libitm/acinclude.m4 @@ -246,7 +246,7 @@ AC_DEFUN([LIBITM_CHECK_LINKER_FEATURES], [ fi changequote(,) ldver=`$LD --version 2>/dev/null | - sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` + sed -e 's/GNU gold /GNU ld /;s/GNU ld .* \(.*\)/\1/; q'` changequote([,]) libitm_gnu_ld_version=`echo $ldver | \ $AWK -F. '{ if (NF<3) [$]3=0; print ([$]1*100+[$]2)*100+[$]3 }'` diff --git libitm/configure libitm/configure index 775f370..1ce18fd 100644 --- libitm/configure +++ libitm/configure @@ -16828,7 +16828,7 @@ fi fi ldver=`$LD --version 2>/dev/null | - sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` + sed -e 's/GNU gold /GNU ld /;s/GNU ld .* \(.*\)/\1/; q'` libitm_gnu_ld_version=`echo $ldver | \ $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'` diff --git libstdc++-v3/acinclude.m4 libstdc++-v3/acinclude.m4 index 599308f..e4a64ce 100644 --- libstdc++-v3/acinclude.m4 +++ libstdc++-v3/acinclude.m4 @@ -219,7 +219,7 @@ AC_DEFUN([GLIBCXX_CHECK_LINKER_FEATURES], [ glibcxx_ld_is_gold=yes fi ldver=`$LD --version 2>/dev/null | - sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` + sed -e 's/GNU gold /GNU ld /;s/GNU ld .* \(.*\)/\1/; q'` changequote([,]) glibcxx_gnu_ld_version=`echo $ldver | \ $AWK -F. '{ if (NF<3) [$]3=0; print ([$]1*100+[$]2)*100+[$]3 }'` diff --git libstdc++-v3/configure libstdc++-v3/configure index 836a6d5..ece031d 100755 --- libstdc++-v3/configure +++ libstdc++-v3/configure @@ -21961,7 +21961,7 @@ $as_echo_n "checking for ld version... " >&6; } glibcxx_ld_is_gold=yes fi ldver=`$LD --version 2>/dev/null | - sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` + sed -e 's/GNU gold /GNU ld /;s/GNU ld .* \(.*\)/\1/; q'` glibcxx_gnu_ld_version=`echo $ldver | \ $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'` @@ -29106,7 +29106,7 @@ $as_echo_n "checking for ld version... " >&6; } glibcxx_ld_is_gold=yes fi ldver=`$LD --version 2>/dev/null | - sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` + sed -e 's/GNU gold /GNU ld /;s/GNU ld .* \(.*\)/\1/; q'` glibcxx_gnu_ld_version=`echo $ldver | \ $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'` @@ -35100,7 +35100,7 @@ $as_echo_n "checking for ld version... " >&6; } glibcxx_ld_is_gold=yes fi ldver=`$LD --version 2>/dev/null | - sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` + sed -e 's/GNU gold /GNU ld /;s/GNU ld .* \(.*\)/\1/; q'` glibcxx_gnu_ld_version=`echo $ldver | \ $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'` @@ -41220,7 +41220,7 @@ $as_echo_n "checking for ld version... " >&6; } glibcxx_ld_is_gold=yes fi ldver=`$LD --version 2>/dev/null | - sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` + sed -e 's/GNU gold /GNU ld /;s/GNU ld .* \(.*\)/\1/; q'` glibcxx_gnu_ld_version=`echo $ldver | \ $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'` @@ -53141,7 +53141,7 @@ $as_echo_n "checking for ld version... " >&6; } glibcxx_ld_is_gold=yes fi ldver=`$LD --version 2>/dev/null | - sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` + sed -e 's/GNU gold /GNU ld /;s/GNU ld .* \(.*\)/\1/; q'` glibcxx_gnu_ld_version=`echo $ldver | \ $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'` @@ -53372,7 +53372,7 @@ $as_echo_n "checking for ld version... " >&6; } glibcxx_ld_is_gold=yes fi ldver=`$LD --version 2>/dev/null | - sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` + sed -e 's/GNU gold /GNU ld /;s/GNU ld .* \(.*\)/\1/; q'` glibcxx_gnu_ld_version=`echo $ldver | \ $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'` @@ -53847,7 +53847,7 @@ $as_echo_n "checking for ld version... " >&6; } glibcxx_ld_is_gold=yes fi ldver=`$LD --version 2>/dev/null | - sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` + sed -e 's/GNU gold /GNU ld /;s/GNU ld .* \(.*\)/\1/; q'` glibcxx_gnu_ld_version=`echo $ldver | \ $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'` @@ -60200,7 +60200,7 @@ $as_echo_n "checking for ld version... " >&6; } glibcxx_ld_is_gold=yes fi ldver=`$LD --version 2>/dev/null | - sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` + sed -e 's/GNU gold /GNU ld /;s/GNU ld .* \(.*\)/\1/; q'` glibcxx_gnu_ld_version=`echo $ldver | \ $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'` @@ -66116,7 +66116,7 @@ $as_echo_n "checking for ld version... " >&6; } glibcxx_ld_is_gold=yes fi ldver=`$LD --version 2>/dev/null | - sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` + sed -e 's/GNU gold /GNU ld /;s/GNU ld .* \(.*\)/\1/; q'` glibcxx_gnu_ld_version=`echo $ldver | \ $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'` @@ -66283,7 +66283,7 @@ $as_echo_n "checking for ld version... " >&6; } glibcxx_ld_is_gold=yes fi ldver=`$LD --version 2>/dev/null | - sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` + sed -e 's/GNU gold /GNU ld /;s/GNU ld .* \(.*\)/\1/; q'` glibcxx_gnu_ld_version=`echo $ldver | \ $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'` @@ -66511,7 +66511,7 @@ $as_echo_n "checking for ld version... " >&6; } glibcxx_ld_is_gold=yes fi ldver=`$LD --version 2>/dev/null | - sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` + sed -e 's/GNU gold /GNU ld /;s/GNU ld .* \(.*\)/\1/; q'` glibcxx_gnu_ld_version=`echo $ldver | \ $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'` Grüße Thomas