From owner-freebsd-toolchain@freebsd.org Sat Jan 5 05:52:06 2019 Return-Path: Delivered-To: freebsd-toolchain@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2232F148C8B3 for ; Sat, 5 Jan 2019 05:52:06 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from mailman.ysv.freebsd.org (mailman.ysv.freebsd.org [IPv6:2001:1900:2254:206a::50:5]) by mx1.freebsd.org (Postfix) with ESMTP id AEDF36ADB4 for ; Sat, 5 Jan 2019 05:52:05 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: by mailman.ysv.freebsd.org (Postfix) id 6DBAE148C8B0; Sat, 5 Jan 2019 05:52:05 +0000 (UTC) Delivered-To: toolchain@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5ADCF148C8AF for ; Sat, 5 Jan 2019 05:52:05 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from mxrelay.ysv.freebsd.org (mxrelay.ysv.freebsd.org [IPv6:2001:1900:2254:206a::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.ysv.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E3C306ADAC for ; Sat, 5 Jan 2019 05:52:04 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org (kenobi.freebsd.org [IPv6:2001:1900:2254:206a::16:76]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.ysv.freebsd.org (Postfix) with ESMTPS id 34CF716FBF for ; Sat, 5 Jan 2019 05:52:04 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org ([127.0.1.118]) by kenobi.freebsd.org (8.15.2/8.15.2) with ESMTP id x055q4KE005511 for ; Sat, 5 Jan 2019 05:52:04 GMT (envelope-from bugzilla-noreply@freebsd.org) Received: (from www@localhost) by kenobi.freebsd.org (8.15.2/8.15.2/Submit) id x055q4Sb005510 for toolchain@FreeBSD.org; Sat, 5 Jan 2019 05:52:04 GMT (envelope-from bugzilla-noreply@freebsd.org) X-Authentication-Warning: kenobi.freebsd.org: www set sender to bugzilla-noreply@freebsd.org using -f From: bugzilla-noreply@freebsd.org To: toolchain@FreeBSD.org Subject: [Bug 220103] devel/glib20: ld-elf.so.1: /usr/local/lib/libglib-2.0.so.0: Undefined symbol "environ" (WITH_LLD_IS_LD) Date: Sat, 05 Jan 2019 05:52:02 +0000 X-Bugzilla-Reason: AssignedTo CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Base System X-Bugzilla-Component: bin X-Bugzilla-Version: CURRENT X-Bugzilla-Keywords: needs-qa X-Bugzilla-Severity: Affects Many People X-Bugzilla-Who: mmel@FreeBSD.org X-Bugzilla-Status: Open X-Bugzilla-Resolution: X-Bugzilla-Priority: Normal X-Bugzilla-Assigned-To: toolchain@FreeBSD.org X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: https://bugs.freebsd.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 05 Jan 2019 05:52:06 -0000 https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D220103 --- Comment #25 from Michal Meloun --- (In reply to Konstantin Belousov from comment #22) > To be fair, typical cause of occurrence of the second unversioned symbol = in > the readelf -a output is due to the presence of the static (debugging) > symbol table. Aha, I did not know this. Thanks for info. > That said, it is wrong for environ to be exported with any > version, as well, it must be unversioned in the dynamic symbol table. Our > rtld is forgiving but in principle we could check. True. Using version script for final binary (not DSO) looks like stupid ide= a, mainly if it contains 'local: *' clause. Moreover, there are more (other th= en=20 '__progname' and 'environ') global symbols exported by /lib/crt*.o stuff. All above is only quick fix for actual damage. At this point, and if these programs are really needs version scripts, I kn= ow about only one real solution. Final link should be splitted to two phases. First phase should link all local objects to one big while applying version script. Second phase should do final link by using resulting object from fi= rst step without issuing version script. But that's a big change, it's hard to tell if it's right and if is acceptab= le by upstream. --=20 You are receiving this mail because: You are the assignee for the bug. You are on the CC list for the bug.=