https://bugs.winehq.org/show_bug.cgi?id=53011
Bug ID: 53011 Summary: Multithreaded compilation fails sometimes due to race conditions Product: Wine Version: 7.7 Hardware: x86-64 OS: Linux Status: NEW Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: dark.shadow4@web.de Distribution: ---
Created attachment 72380 --> https://bugs.winehq.org/attachment.cgi?id=72380 Sample of the two broken files
Sometimes the compilation fails with a message like the following:
/usr/bin/i686-w64-mingw32-dlltool: dlls/mfplat/libmfplat.cross.a: error reading mfplat_dll_t.o: No such file or directory
/usr/bin/i686-w64-mingw32-dlltool: dlls/rpcrt4/librpcrt4.cross.a: error reading rpcrt4_dll_h.o: file truncated
/usr/bin/i686-w64-mingw32-dlltool: dlls/rpcrt4/librpcrt4.delay.a: error reading rpcrt4_dll_t.o: No such file or directory
/usr/bin/i686-w64-mingw32-dlltool: bfd_open failed reopen stub file: wintrust_dll_s00009.o: No such file or directory
Or sometimes files are broken:
/usr/lib/gcc/i686-w64-mingw32/11.2.0/../../../../i686-w64-mingw32/bin/ld: dlls/iphlpapi/libiphlpapi.delay.a: error adding symbols: file in wrong format
/usr/lib/gcc/i686-w64-mingw32/11.2.0/../../../../i686-w64-mingw32/bin/ld: dlls/wintrust/libwintrust.cross.a: error adding symbols: file format not recognized
If the file doesn't exist / is truncated, then trying again usually makes it work. For broken files, they need to be deleted and then you can try again.
I usually compile wine like this: ALLFLAGS="-g -O0" PKG_CONFIG_PATH=/usr/lib32/pkgconfig CC="ccache gcc" CFLAGS="$ALLFLAGS" CROSSCC="ccache i686-w64-mingw32-gcc" CROSSCFLAGS="$ALLFLAGS" ../wine-git/configure --without-cups --enable-silent-rules make -j15 -sw
I don't think ccache causes this, but possibly it exacerbates it..