Summary: | sys-devel/gcc-7.2.0 leaves broken orphaned file after install | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Paolo Pedroni <paolo.pedroni> |
Component: | Current packages | Assignee: | Gentoo Toolchain Maintainers <toolchain> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | hydrapolic |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: | gcc-7.2.0:20171120-095743.log.xz |
Description
Paolo Pedroni
2017-11-20 11:45:25 UTC
Created attachment 505062 [details]
gcc-7.2.0:20171120-095743.log.xz
confirm with cave fix-linkage report: localhost packages # cave fix-linkage Searching: 11 directories, 76909 files * sys-devel/gcc-7.2.0::installed /usr/lib64/gcc/x86_64-pc-linux-gnu/7.2.0/plugin/libcp1plugin.la (requires /usr/lib/../lib64/libstdc++.la) Done: 1257 steps, 13 metadata (13 Gserver-pbins) These are the actions I will take, in order: r sys-devel/gcc:7.2.0::Gserver-pbins 7.2.0 to ::installed replacing 7.2.0 (-altivec) (-awt) (-cilk) (cxx) (-debug) (-doc) (-fixed-point) (fortran) (-gcj) (-go) (-graphite) (-hardened) (-jit) (-libssp) (-mpx) (-multilib) (nls) (nptl) (-objc) (-objc++) (-objc-gc) (openmp) (pch) (-pgo) (-pie) (-regression-test) (sanitize) (ssp) (-vanilla) (vtv) build_options: (-optional_tests) -trace work=tidyup Reasons: target (/usr/lib/../lib64/libstdc++.la) Total: 1 reinstalls Executing pretend actions: 1 of 1 * No unread news items found localhost packages # eix sys-devel/gcc [I] sys-devel/gcc Available versions: (2.95.3) [M]~*2.95.3-r10^s (3.3.6) [M](~)3.3.6-r1^s (3.4.6) [M]3.4.6-r2^s (4.0.4) [M]**4.0.4^s (4.1.2) [M]4.1.2^s (4.2.4) [M](~)4.2.4-r1^s (4.3.6) [M]4.3.6-r1^s (4.4.7) [M]4.4.7^s (4.5.4) [M]4.5.4^s (4.6.4) [M]4.6.4^s (4.7.4) [M]4.7.4^s (4.8.5) [M]4.8.5^s (4.9.4) 4.9.4^s (5.4.0) 5.4.0-r3^s (6.3.0) (~)6.3.0^s (6.4.0) 6.4.0^s (7.2.0) (~)7.2.0^s {altivec awt boundschecking cilk +cxx d debug doc fixed-point +fortran gcj go graphite hardened jit libssp mpx mudflap multilib +nls nopie nossp +nptl objc objc++ objc-gc +openmp +pch pgo +pie regression-test +sanitize +ssp vanilla +vtv} Installed versions: 5.4.0-r3(5.4.0)^s(10:24:27 PM 03/26/2017)(cxx fortran nls nptl openmp sanitize vtv -altivec -awt -cilk -debug -doc -fixed-point -gcj -go -graphite -hardened -jit -libssp -mpx -multilib -nopie -nossp -objc -objc++ -objc-gc -regression-test -vanilla) 6.4.0(6.4.0)^s(10:53:09 AM 10/11/2017)(cxx fortran nls nptl openmp pch sanitize ssp vtv -altivec -awt -cilk -debug -doc -fixed-point -gcj -go -graphite -hardened -jit -libssp -mpx -multilib -objc -objc++ -objc-gc -pgo -pie -regression-test -vanilla) 7.2.0(7.2.0)^s(11:14:43 PM 12/06/2017)(cxx fortran nls nptl openmp pch sanitize ssp vtv -altivec -awt -cilk -debug -doc -fixed-point -gcj -go -graphite -hardened -jit -libssp -mpx -multilib -objc -objc++ -objc-gc -pgo -pie -regression-test -vanilla) Homepage: https://gcc.gnu.org/ Description: The GNU Compiler Collection Same thing, of course, with gcc-7.30 and gcc-7.3.0-r1 Yeah, those are clearly untracked: $ qfile -o /usr/lib*/gcc/*/*/plugin/libcp1plugin.la /usr/lib64/gcc/aarch64-unknown-linux-gnu/7.2.0/plugin/libcp1plugin.la /usr/lib64/gcc/aarch64-unknown-linux-gnu/7.3.0/plugin/libcp1plugin.la /usr/lib64/gcc/alpha-unknown-linux-gnu/7.2.0/plugin/libcp1plugin.la /usr/lib64/gcc/alpha-unknown-linux-gnu/7.3.0/plugin/libcp1plugin.la /usr/lib64/gcc/arm-none-eabi/7.2.0/plugin/libcp1plugin.la /usr/lib64/gcc/arm-none-eabi/7.3.0/plugin/libcp1plugin.la I think mismatch here happens because gcc installs it into lib and not lib64: $ /var/db/pkg/cross-arm-none-eabi:fgrep -R libcp1plugin.la gcc-7.3.0-r1/CONTENTS:obj /usr/lib/gcc/arm-none-eabi/7.3.0/plugin/libcp1plugin.la 6669441d9b1b924250f8fbd5a590f2da 1520817034 gcc-7.2.0-r1/CONTENTS:obj /usr/lib/gcc/arm-none-eabi/7.2.0/plugin/libcp1plugin.la 8c28fa8ffbacfa357f1f70062d449713 1520910667 Thus the files are not orphan but are installed over symlink path. The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=599e4bb20b3718ba7d18260ee7891701034e2ee2 commit 599e4bb20b3718ba7d18260ee7891701034e2ee2 Author: Sergei Trofimovich <slyfox@gentoo.org> AuthorDate: 2018-04-13 23:23:08 +0000 Commit: Sergei Trofimovich <slyfox@gentoo.org> CommitDate: 2018-04-13 23:25:08 +0000 toolchain.eclass: don't install libcp1plugin.la Don't install plugin's .la file. Plugins are meant to be loaded at runtime (they all export the same sympols, etc.). Plugins don't have static library equivalent. Drop 'libcp1plugin.la'. Reported-by: Paolo Pedroni Closes: https://bugs.gentoo.org/638216 Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org> eclass/toolchain.eclass | 2 ++ 1 file changed, 2 insertions(+) |