Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 22 May 2023 09:13:25 +0000
From:      bugzilla-noreply@freebsd.org
To:        desktop@FreeBSD.org
Subject:   [Bug 268514] graphics/png: missing symbol after upgrading from 1.6.37 to 1.6.38
Message-ID:  <bug-268514-39348-ISLvPmMX7U@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-268514-39348@https.bugs.freebsd.org/bugzilla/>
References:  <bug-268514-39348@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D268514

Tatsuki Makino <tatsuki_makino@hotmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |tatsuki_makino@hotmail.com

--- Comment #5 from Tatsuki Makino <tatsuki_makino@hotmail.com> ---
(In reply to Adriaan de Groot from comment #4)

conftest.map:
VERS_1 { global: sym; local: *; }; VERS_2 { global: sym2; main; } VERS_1;

src.c:
void sym(void) {} void sym2(void) {} int main(void) {return 0;}

When such a file is prepared and the following command is executed...

clang -Wl,--version-script=3Dconftest.map src.c
    -> This is no problem.

gcc12 -Wl,--version-script=3Dconftest.map src.c
    -> This fails with a message like CMakeError.log of attachment 239067.

As a workaround for this,

Add -shared
    -> gcc12 -Wl,--version-script=3Dconftest.map -shared src.c

Rewrite local:*; in VERS_1.
    -> VERS_1 { global: sym; local: foo; }; VERS_2 { global: sym2; main; }
VERS_1;
    or -> VERS_1 { global: sym; }; VERS_2 { global: sym2; main; } VERS_1;

As a result, gcc may also be treated as having version-script support
successfully.

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-268514-39348-ISLvPmMX7U>