[Pkg-rust-maintainers] Bug#540782: Please provide dwarf2-eh version of mingw-i686

Stephen Kitt skitt at debian.org
Sat Sep 12 20:40:28 BST 2020


Hi Ximin,

On Sun, 9 Aug 2020 03:08:39 +0100, Ximin Luo <infinity0 at debian.org> wrote:
> I am the maintainer of rustc in Debian. I am trying to provide
> cross-compiling libraries for windows. I have 64-bit working fine, however
> 32-bit is not working because rustc expects dw2 exceptions but Debian's
> mingw only provides sjlj.
> 
> I therefore request the maintainer to provide the dw2 version.
> 
> There were previously arguments saying this would be confusing for users;
> however I note that we *already* provide two mingw toolchains - one for the
> pthreads threading model, and one for the win32 threading model.
> Incidentally, rustc requires the latter.
> 
> I am not suggesting that we provide 4 toolchains, only 3, the 3rd one being
> win32+dw2. We could call it gcc-mingw-w64-i686-win32+dw2 for example.

The problem with providing another toolchain is that the ABI is rather
different between SJLJ and Dw2, so we’d end up having two toolchains claiming
to target *-w64-mingw32 but producing incompatible artifacts. Technically
POSIX and Win32 threads are in a similar situation, but in practice it
doesn’t cause problems as far as I’m aware; SJLJ/Dw2 are more likely to.

I’ve spent some time looking into this and I can’t really think of a sensible
workaround.

> For other context, Fedora in fact recently switched from sjlj to dw2,
> ditching the former completely, largely because of rust:
> 
> https://fedoraproject.org/wiki/Changes/Mingw32GccDwarf2

This, along with the long-standing MSYS2 switch, make me more inclined to
follow suit and drop SJLJ in favour of Dwarf2, for Bullseye.

I’m not sure how to reach all the users of the MinGW-w64 toolchain in Debian,
feel free to point people to this bug...

Regards,

Stephen
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://alioth-lists.debian.net/pipermail/pkg-rust-maintainers/attachments/20200912/9abf2d15/attachment.sig>


More information about the Pkg-rust-maintainers mailing list