Skip to content

Incompatibility between rustc's libgcc_s_dw2-1.dll and MSYS2 mingw-w64-i686-gcc 11.3 #99534

Closed
@tspiteri

Description

@tspiteri

When the stable-i686-pc-windows-gnu toolchain's bin directory is at the beginning of the PATH variable (as will happen when using rustup), MSYS2 x86 gcc versions 11.3 and higher fail.

This can be reproduced

  • on the MSYS2 MinGW x86 terminal

  • install mingw-w64-i686-gcc package version 11.3 or higher (I tested with 11.3.0-2)

  • include the toolchain's bin directory at the beginning of the PATH, for example with

      PATH="/c/Users/User/.rustup/toolchains/1.38.0-i686-pc-windows-gnu/bin:$PATH"
    
  • try to compile a simple c file, for example gcc a.c with a.c containing only int main () { return 0; }

No a.exe is generated. Repeating with gcc version 11.2 (I tested with 11.2.0-9) will generate a.exe.

With the latest MSYS2 gcc (12.1.0-3) the problem is still there with no a.exe generated.

If libgcc_s_dw2-1.dll is removed from the toolchain's bin directory, a.exe is generated.

(I first thought it was a rustup 1.25 issue and opened rust-lang/rustup#3045, but then I realized the issue is here, or maybe in MSYS2/gcc.)

Metadata

Metadata

Assignees

No one assigned

    Labels

    C-bugCategory: This is a bug.O-x86_32Target: x86 processors, 32 bit (like i686-*) (IA-32)

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions