Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 676490 - sys-devel/crossdev: doesn't clean up the world file upon crossdev -C
Summary: sys-devel/crossdev: doesn't clean up the world file upon crossdev -C
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Crossdev team
URL:
Whiteboard:
Keywords:
: 681914 (view as bug list)
Depends on:
Blocks: crossdev-bugs
  Show dependency tree
 
Reported: 2019-01-27 12:18 UTC by tt_1
Modified: 2022-11-18 03:28 UTC (History)
7 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description tt_1 2019-01-27 12:18:30 UTC
host is amd64-glibc, crossdev is latest snapshot (20181202)

how to reproduce:

crossdev -S -t x86_64-unknown-linux-musl
and then remove it: 
crossdev -C x86_64-unknown-linux-musl

next emerge -auvND world on the host will throw out warnings that cross-x86_64-unknown-linux-musl/{linux-headers;binutils;musl;gcc} can't be handled as there is no ebuild for them. This means: portage finds them in world file, but can't find the ebuild they were installed with, as these were cleaned up with crossdev -C

how to fix: edit /var/lib/portage/world with text editor and remove offending lines.
Comment 1 James R Larrowe 2019-01-28 00:17:17 UTC
I can also confirm this on targets x86_64-w64-mingw32 and i686-w64-mingw32 with latest ~amd64 crossdev.
Comment 2 tt_1 2019-03-03 20:53:31 UTC
Could it be that this happens when at least one of the glibc/gcc/binutils/kernel-headers is set to unstable during configure of the cross-toolchain? Because, I had this recently happening while uninstalling a armv7a-unknown-linux-gnueabihf target.
Comment 3 tt_1 2019-03-15 18:58:55 UTC
neither does it clean up glibc related toolchains. 

I mean, it's not that big of a deal to do it by hand, but it's possible that portage uses a ton of I/O to look for something that just isn't there.
Comment 4 Sergei Trofimovich (RETIRED) gentoo-dev 2019-03-28 22:55:12 UTC
*** Bug 681914 has been marked as a duplicate of this bug. ***
Comment 5 MJ 2019-03-28 23:52:18 UTC
I assume it happens when the target fails to build one of its components (For example GCC fails), and then we try to clean it.
Comment 6 Sergei Trofimovich (RETIRED) gentoo-dev 2019-03-29 00:12:22 UTC
No. I think crossdev just does not have code to unmerge packages:
    https://gitweb.gentoo.org/proj/crossdev.git/tree/crossdev#n546

I think qmerge does not affect world file.
Comment 7 Marek Szuba archtester gentoo-dev 2021-04-29 11:29:29 UTC
The problem is still very much present in 20201129.
Comment 8 Larry the Git Cow gentoo-dev 2021-10-27 09:19:39 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/proj/crossdev.git/commit/?id=bec5fd6a5597f736a868e79017f99b5bc79a9dbf

commit bec5fd6a5597f736a868e79017f99b5bc79a9dbf
Author:     Mike Frysinger <vapier@gentoo.org>
AuthorDate: 2021-10-27 09:19:31 +0000
Commit:     Mike Frysinger <vapier@gentoo.org>
CommitDate: 2021-10-27 09:19:31 +0000

    crossdev: clean world file on uninstall
    
    Closes: https://bugs.gentoo.org/676490
    Signed-off-by: Mike Frysinger <vapier@gentoo.org>

 crossdev | 3 +++
 1 file changed, 3 insertions(+)