[Bug 1971901] Re: dlltool uses non-unique temp filenames
Kevin Puetz
1971901 at bugs.launchpad.net
Tue Nov 1 15:17:57 UTC 2022
binutils fix publised to jammy-updates on 2022-10-24, binutils-mingw-w64
would just need a recompile against binutils-source 2.38-4ubuntu2 to fix
this issue.
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to binutils in Ubuntu.
https://bugs.launchpad.net/bugs/1971901
Title:
dlltool uses non-unique temp filenames
Status in binutils:
Fix Released
Status in Wine:
Won't Fix
Status in binutils package in Ubuntu:
Fix Released
Status in binutils-mingw-w64 package in Ubuntu:
Triaged
Status in binutils source package in Jammy:
Fix Committed
Status in binutils-mingw-w64 source package in Jammy:
Triaged
Bug description:
Description: Ubuntu 22.04 LTS
Release: 22.04
binutils-mingw-w64-x86-64 2.38-3ubuntu1+9build1
/usr/bin/x86_64-w64-mingw32-dlltool now encounters errors like
tools/winebuild/winebuild -b x86_64-w64-mingw32 -w --implib -o dlls/winmm/libwinmm.delay.a --export \
../wine-6.0.4/dlls/winmm/winmm.spec
Assembler messages:
Error: can't open winmm_dll_t.s for reading: No such file or directory
/usr/bin/x86_64-w64-mingw32-dlltool: /usr/bin/x86_64-w64-mingw32-as exited with status 1
/usr/bin/x86_64-w64-mingw32-dlltool: failed to open temporary tail file: winmm_dll_t.o: No such file or directory
winebuild: /usr/bin/x86_64-w64-mingw32-dlltool failed with status 1
make: *** [Makefile:195227: dlls/winmm/libwinmm.delay.a] Error 1
make: *** Waiting for unfinished jobs....
tools/winebuild/winebuild -b x86_64-w64-mingw32 -w --implib -o dlls/winmm/libwinmm.cross.a --export \
../wine-6.0.4/dlls/winmm/winmm.spec
Due to dlltool using names like winmm_dll_t.s and winmm_dll_t.o for
it's temp file - these are not unique when building libwinmm.delay.a
and libwinmm.cross.a in parallel. (This can of course affect any dll
wine is building import libs for, winmm is just the one I happaned to
get caught on).
This is regression newly introduced in binutils 2.38 vs older versions
which used getpid() as the basis of their temp name. We just
encountered it as part of updating our CI for a winelib application
from focal to jammy, but it seems to have been discovered by others
already: see https://sourceware.org/bugzilla/show_bug.cgi?id=28885
There is an upstream fix on master (2.39) which is already backported
to the binutils-2_38 branch:
https://sourceware.org/git/gitweb.cgi?p=binutils-
gdb.git;h=99852365513266afdd793289813e8e565186c9e6, so it should just
be a matter of cherry-picking. Hopefully the fact it's a regression
from impish->jammy and that upstream already backported it to 2.38
might make this a candidate for jammy-updates?
To manage notifications about this bug go to:
https://bugs.launchpad.net/binutils/+bug/1971901/+subscriptions
More information about the foundations-bugs
mailing list