From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pl1-x62f.google.com (mail-pl1-x62f.google.com [IPv6:2607:f8b0:4864:20::62f]) by sourceware.org (Postfix) with ESMTPS id 435EB3858415 for ; Sat, 8 Jan 2022 20:21:36 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 435EB3858415 Received: by mail-pl1-x62f.google.com with SMTP id p14so8621094plf.3 for ; Sat, 08 Jan 2022 12:21:36 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=FBNTHFSNcPTshqMKKtHcr35s3Y2p0tKBl4c4xyxjpNc=; b=CkUGHzD2Dxi29F0tULhNvhqCsNTrMDTO3XIFLbiqJn439g8AaehuQMhcFbBq6iTGbP q2v2gDWWu5bkv1dHFd/dcFJNA3ouQYit5V0oW40HMWXETwuadbF3EQaKe7h7ntDY8OsS v3tzckFS9KiQAYIUrC4mTFrfH6d4zhIYZL4WosLxD/gWzqYiGWS8bOAoF92sEj/nCnme pkIi9UCV6hHR7KTvmjKA0Tg+3hajbNV5rbylAoDMoN23r21YBFc8HUDmNHjlRIAwzvoq oC4TZ7o7R7TDHKLda/ucIKeqE3aXuH6b2Q6Ay65dGF8FyffsdYX1ZKx6trQ74RLlu7qo mpRA== X-Gm-Message-State: AOAM532BjO486pX+cGAvVjobMACJXLlMTdGhUSi6dzdIj4mKuVKyl/fU 71xwlF6k4n7Bl2hrcOD+zdUFHVuNZ+B+pVLk+3A= X-Google-Smtp-Source: ABdhPJzBKLAxAxkgetW1LhiCEzHHyHshXcZJXcrSknPmg1cFSqM4LGbSf0z+2DPpiddM45cM4eZCr7VfCsNIBRmTDLQ= X-Received: by 2002:a17:90b:4f86:: with SMTP id qe6mr22014174pjb.120.1641673295168; Sat, 08 Jan 2022 12:21:35 -0800 (PST) MIME-Version: 1.0 References: <20220108070009.3104695-1-shorne@gmail.com> In-Reply-To: <20220108070009.3104695-1-shorne@gmail.com> From: "H.J. Lu" Date: Sat, 8 Jan 2022 12:20:59 -0800 Message-ID: Subject: Re: [RFC PATCH] elf: Fix link error missing Unwind_Backtrace symbol To: Stafford Horne Cc: GLIBC patches Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-3027.6 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, GIT_PATCH_0, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, URIBL_BLACK autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jan 2022 20:21:38 -0000 On Fri, Jan 7, 2022 at 11:00 PM Stafford Horne via Libc-alpha wrote: > > --- > For some reason build many is failing with missing Unwind_Backtrace symbo= l > when linking tst-unwind-ctor-lib.so. > > or1k-glibc-linux-gnu-gcc -shared -static-libgcc -Wl,-dynamic-linke= r=3D/lib/ld-linux-or1k.so.1 -Wl,-z,defs -B/home/shorne/work/gnu-toolchain/b= uild-many/build/glibcs/or1k-linux-gnu-soft/glibc/csu/ -Wl,-z,combreloc -Wl= ,-z,relro -Wl,--hash-style=3Dboth -L/home/shorne/work/gnu-toolchain/build-= many/build/glibcs/or1k-linux-gnu-soft/glibc -L/home/shorne/work/gnu-toolcha= in/build-many/build/glibcs/or1k-linux-gnu-soft/glibc/math -L/home/shorne/wo= rk/gnu-toolchain/build-many/build/glibcs/or1k-linux-gnu-soft/glibc/elf -L/h= ome/shorne/work/gnu-toolchain/build-many/build/glibcs/or1k-linux-gnu-soft/g= libc/dlfcn -L/home/shorne/work/gnu-toolchain/build-many/build/glibcs/or1k-l= inux-gnu-soft/glibc/nss -L/home/shorne/work/gnu-toolchain/build-many/build/= glibcs/or1k-linux-gnu-soft/glibc/nis -L/home/shorne/work/gnu-toolchain/buil= d-many/build/glibcs/or1k-linux-gnu-soft/glibc/rt -L/home/shorne/work/gnu-to= olchain/build-many/build/glibcs/or1k-linux-gnu-soft/glibc/resolv -L/home/sh= orne/work/gnu-toolchain/build-many/build/glibcs/or1k-linux-gnu-soft/glibc/m= athvec -L/home/shorne/work/gnu-toolchain/build-many/build/glibcs/or1k-linux= -gnu-soft/glibc/support -L/home/shorne/work/gnu-toolchain/build-many/build/= glibcs/or1k-linux-gnu-soft/glibc/crypt -L/home/shorne/work/gnu-toolchain/bu= ild-many/build/glibcs/or1k-linux-gnu-soft/glibc/nptl -Wl,-rpath-link=3D/hom= e/shorne/work/gnu-toolchain/build-many/build/glibcs/or1k-linux-gnu-soft/gli= bc:/home/shorne/work/gnu-toolchain/build-many/build/glibcs/or1k-linux-gnu-s= oft/glibc/math:/home/shorne/work/gnu-toolchain/build-many/build/glibcs/or1k= -linux-gnu-soft/glibc/elf:/home/shorne/work/gnu-toolchain/build-many/build/= glibcs/or1k-linux-gnu-soft/glibc/dlfcn:/home/shorne/work/gnu-toolchain/buil= d-many/build/glibcs/or1k-linux-gnu-soft/glibc/nss:/home/shorne/work/gnu-too= lchain/build-many/build/glibcs/or1k-linux-gnu-soft/glibc/nis:/home/shorne/w= ork/gnu-toolchain/build-many/build/glibcs/or1k-linux-gnu-soft/glibc/rt:/hom= e/shorne/work/gnu-toolchain/build-many/build/glibcs/or1k-linux-gnu-soft/gli= bc/resolv:/home/shorne/work/gnu-toolchain/build-many/build/glibcs/or1k-linu= x-gnu-soft/glibc/mathvec:/home/shorne/work/gnu-toolchain/build-many/build/g= libcs/or1k-linux-gnu-soft/glibc/support:/home/shorne/work/gnu-toolchain/bui= ld-many/build/glibcs/or1k-linux-gnu-soft/glibc/crypt:/home/shorne/work/gnu-= toolchain/build-many/build/glibcs/or1k-linux-gnu-soft/glibc/nptl -o /home/s= horne/work/gnu-toolchain/build-many/build/glibcs/or1k-linux-gnu-soft/glibc/= elf/tst-unwind-ctor-lib.so -T /home/shorne/work/gnu-toolchain/build-many/bu= ild/glibcs/or1k-linux-gnu-soft/glibc/shlib.lds /home/shorne/work/gnu-toolch= ain/build-many/build/glibcs/or1k-linux-gnu-soft/glibc/csu/abi-note.o /home/= shorne/work/gnu-toolchain/build-many/build/glibcs/or1k-linux-gnu-soft/glibc= /elf/tst-unwind-ctor-lib.os -Wl,--start-group /home/shorne/work/gnu-toolch= ain/build-many/build/glibcs/or1k-linux-gnu-soft/glibc/libc.so /home/shorne/= work/gnu-toolchain/build-many/build/glibcs/or1k-linux-gnu-soft/glibc/libc_n= onshared.a -Wl,--as-needed /home/shorne/work/gnu-toolchain/build-many/build= /glibcs/or1k-linux-gnu-soft/glibc/elf/ld.so -Wl,--no-as-needed -Wl,--end-gr= oup > /home/shorne/work/gnu-toolchain/build-many/install/compilers/or1k-lin= ux-gnu/lib/gcc/or1k-glibc-linux-gnu/12.0.0/../../../../or1k-glibc-linux-gnu= /bin/ld: /home/shorne/work/gnu-toolchain/build-many/build/glibcs/or1k-linux= -gnu-soft/glibc/elf/tst-unwind-ctor-lib.os: in function `do_unwind': > /home/shorne/work/gnu-toolchain/glibc/elf/tst-unwind-ctor-lib.c:36: u= ndefined reference to `_Unwind_Backtrace' It is a bug in your GCC: $ gcc -shared -static-libgcc -Wl,-dynamic-linker=3D/lib64/ld-linux-x86-64.so.2 -Wl,-z,defs -B/export/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/csu/ -Wl,-z,combreloc -Wl,-z,relro -Wl,--hash-style=3Dboth -L/export/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux -L/export/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/math -L/export/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/elf -L/export/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/dlfcn -L/export/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/nss -L/export/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/nis -L/export/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/rt -L/export/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/resolv -L/export/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/mathve= c -L/export/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/suppor= t -L/export/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/crypt -L/export/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/nptl -Wl,-rpath-link=3D/export/build/gnu/tools-build/glibc-gitlab-test/build-x86= _64-linux:/export/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linu= x/math:/export/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/e= lf:/export/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/dlfcn= :/export/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/nss:/ex= port/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/nis:/export= /build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/rt:/export/buil= d/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/resolv:/export/build= /gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/mathvec:/export/build= /gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/support:/export/build= /gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/crypt:/export/build/g= nu/tools-build/glibc-gitlab-test/build-x86_64-linux/nptl -o /export/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/elf/t= st-unwind-ctor-lib.so /export/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/csu/abi= -note.o /export/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/elf/tst-= unwind-ctor-lib.os -Wl,--start-group /export/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/libc.so /export/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/libc_non= shared.a -Wl,--as-needed /export/build/gnu/tools-build/glibc-gitlab-test/build-x86_64-linux/elf/ld.s= o -Wl,--no-as-needed -Wl,--end-group -Wl,--trace-symbol,_Unwind_Backtrace ld: /usr/lib/gcc/x86_64-redhat-linux/11/libgcc_eh.a(unwind-dw2.o): definition of _Unwind_Backtrace ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^= ^^^^^^^^^^^^^^^^^^^ > Adding the -lgcc_s fixes this. I am not sure why this is just showing up= now, > I just re-bootstrapped my build-many compilers and this error started sho= wing > up. I notice its not happending on the test results mailing list. Perha= ps > someone has an idea? > > This patch fixes it and the check phase passes. > > elf/Makefile | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/elf/Makefile b/elf/Makefile > index b86d116be9..5bf9a3eb64 100644 > --- a/elf/Makefile > +++ b/elf/Makefile > @@ -2011,6 +2011,7 @@ $(objpfx)tst-big-note: $(objpfx)tst-big-note-lib.so > $(objpfx)tst-big-note-lib.so: $(objpfx)tst-big-note-lib.o > $(LINK.o) -shared -o $@ $(LDFLAGS.so) $< > > +LDLIBS-tst-unwind-ctor-lib.so =3D -lgcc_s > $(objpfx)tst-unwind-ctor: $(objpfx)tst-unwind-ctor-lib.so > > CFLAGS-tst-unwind-main.c +=3D -funwind-tables -DUSE_PTHREADS=3D0 > -- > 2.31.1 > --=20 H.J.