Skip to content

Exclude '/path/to/ghc' from PATH during stack run on Windows #5036

Open
@Krantz-XRF

Description

@Krantz-XRF

Motivation

I have a project, which depends on sdl2. SDL2 (the C library), in turn, has a dependency of zlib1.dll. It seems zlib1.dll from GHC 8.6.5 is not compatible with SDL2 from MSYS. The problem is, when I run stack run from the terminal, the zlib1.dll chosen by Windows is always the one bundled with GHC, instead of the one installed by MSYS.

I might just copy all the DLLs together with the executable produced by stack build to some other path and double-click to run it (and this method worked), but that is far from desirable.

Proposal

I feel that this problem can be solved by removing /path/to/ghc from the PATH variable during stack run, thus the zlib1.dll installed by MSYS could take precedence.

As far as I understand, it is not necessary for GHC to be in PATH during stack run. If I were wrong on this, it will also be helpful to have an option.

Simply swap the sequence of GHC path and MSYS path everywhere probably will NOT help, for that might break GHC on stack build.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions