mipsen cross-toolchain bootstrap stalled, file conflicts

Bug #1980779 reported by Steve Langasek
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
cross-toolchain-base-mipsen (Ubuntu)
Fix Released
Undecided
Unassigned
gcc-11-cross-mipsen (Ubuntu)
Fix Released
Undecided
Unassigned
gcc-12-cross-mipsen (Ubuntu)
Fix Released
Undecided
Unassigned
gcc-9-cross-mipsen (Ubuntu)
Fix Released
Undecided
Unassigned
gcc-defaults-mipsen (Ubuntu)
Fix Released
Undecided
Unassigned
glibc (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

The build-dependencies of gcc-11-cross-mipsen are uninstallable in Ubuntu because of file conflicts:

Preparing to unpack .../libc6-mips32-mips64-cross_2.35-0ubuntu1cross1_all.deb ...
Unpacking libc6-mips32-mips64-cross (2.35-0ubuntu1cross1) ...
dpkg: error processing archive /var/cache/apt/archives/libc6-mips32-mips64-cross_2.35-0ubuntu1cross1_all.deb (--unpack):
 trying to overwrite '/usr/mips64-linux-gnuabi64/lib/ld.so.1', which is also in package libc6-mips64-cross 2.35-0ubuntu1cross1
Preparing to unpack .../libc6-mips32-mips64el-cross_2.35-0ubuntu1cross1_all.deb ...
Unpacking libc6-mips32-mips64el-cross (2.35-0ubuntu1cross1) ...
dpkg: error processing archive /var/cache/apt/archives/libc6-mips32-mips64el-cross_2.35-0ubuntu1cross1_all.deb (--unpack):
 trying to overwrite '/usr/mips64el-linux-gnuabi64/lib/ld.so.1', which is also in package libc6-mips64el-cross 2.35-0ubuntu1cross1
Preparing to unpack .../libc6-mips32-mips64r6-cross_2.35-0ubuntu1cross1_all.deb ...
Unpacking libc6-mips32-mips64r6-cross (2.35-0ubuntu1cross1) ...
dpkg: error processing archive /var/cache/apt/archives/libc6-mips32-mips64r6-cross_2.35-0ubuntu1cross1_all.deb (--unpack):
 trying to overwrite '/usr/mipsisa64r6-linux-gnuabi64/lib/ld-linux-mipsn8.so.1', which is also in package libc6-mips64r6-cross 2.35-0ubuntu1cross1
Preparing to unpack .../libc6-mips32-mips64r6el-cross_2.35-0ubuntu1cross1_all.deb ...
Unpacking libc6-mips32-mips64r6el-cross (2.35-0ubuntu1cross1) ...
dpkg: error processing archive /var/cache/apt/archives/libc6-mips32-mips64r6el-cross_2.35-0ubuntu1cross1_all.deb (--unpack):
 trying to overwrite '/usr/mipsisa64r6el-linux-gnuabi64/lib/ld-linux-mipsn8.so.1', which is also in package libc6-mips64r6el-cross 2.35-0ubuntu1cross1
Errors were encountered while processing:
 /var/cache/apt/archives/libc6-mips32-mips64-cross_2.35-0ubuntu1cross1_all.deb
 /var/cache/apt/archives/libc6-mips32-mips64el-cross_2.35-0ubuntu1cross1_all.deb
 /var/cache/apt/archives/libc6-mips32-mips64r6-cross_2.35-0ubuntu1cross1_all.deb
 /var/cache/apt/archives/libc6-mips32-mips64r6el-cross_2.35-0ubuntu1cross1_all.deb

These file conflicts do not exist in Debian, the packages are co-installable.

$ dpkg -S /usr/mips64-linux-gnuabi64/lib/ld.so.1
libc6-mips32-mips64-cross: /usr/mips64-linux-gnuabi64/lib/ld.so.1
$

$ dpkg -L libc6-mips64-cross|grep ld.so.1
/usr/mips64-linux-gnuabi64/lib64/ld.so.1
$

So there's a lib vs lib64 path difference between Debian and Ubuntu, I don't know why.

Steve Langasek (vorlon)
tags: added: update-excuse
Revision history for this message
Steve Langasek (vorlon) wrote :

The problem is that libc6-mips64-cross contains /usr/mips64-linux-gnuabi64/lib/ld.so.1 in Ubuntu, but not in Debian. I suspect this is a result of changes in glibc upstream, present in Ubuntu (glibc 2.35) but not in Debian (glibc 2.33), regarding the canonical names of the various library files.

Revision history for this message
Michael Hudson-Doyle (mwhudson) wrote :

yeah so this is because the code that excludes /usr/mips64-linux-gnuabi64/lib/ld.so.1 from libc6-mips64-cross is in the code that handles symlinks and that file is now a regular file. Testing a fix but this is all done in perl...

Revision history for this message
Michael Hudson-Doyle (mwhudson) wrote :
Revision history for this message
Michael Hudson-Doyle (mwhudson) wrote (last edit ):

Here is the build https://launchpad.net/~mwhudson/+archive/ubuntu/devirt/+build/24339504. If this finishes and looks OK before I start tomorrow, I'm happy for someone else to upload it :)

tags: added: patch
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in cross-toolchain-base-mipsen (Ubuntu):
status: New → Confirmed
Changed in gcc-11-cross-mipsen (Ubuntu):
status: New → Confirmed
Changed in gcc-12-cross-mipsen (Ubuntu):
status: New → Confirmed
Changed in gcc-9-cross-mipsen (Ubuntu):
status: New → Confirmed
Changed in gcc-defaults-mipsen (Ubuntu):
status: New → Confirmed
Changed in glibc (Ubuntu):
status: New → Confirmed
Revision history for this message
Matthias Klose (doko) wrote :

all the -mipsen packages are now built for 24.04 LTS

Changed in cross-toolchain-base-mipsen (Ubuntu):
status: Confirmed → Fix Released
Changed in gcc-11-cross-mipsen (Ubuntu):
status: Confirmed → Fix Released
Changed in gcc-12-cross-mipsen (Ubuntu):
status: Confirmed → Fix Released
Changed in gcc-9-cross-mipsen (Ubuntu):
status: Confirmed → Fix Released
Changed in gcc-defaults-mipsen (Ubuntu):
status: Confirmed → Fix Released
Changed in glibc (Ubuntu):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.