1
1
<div class =" hidden-warning " ><a href =" https://docs.haskellstack.org/ " ><img src =" https://cdn.jsdelivr.net/gh/commercialhaskell/stack/doc/img/hidden-warning.svg " ></a ></div >
2
2
3
- # Developing on windows #
4
-
5
- On Windows, Stack comes with an installation of
6
- [ MSYS2] ( https://www.msys2.org/ ) . MSYS2 will be used by Stack to
7
- provide a unix-like shell for Stack. This may be necessary for installing some Haskell packages, such as those which use ` configure ` scripts.
8
- No
9
- matter which terminal you choose (cmd.exe, powershell, git bash or any
10
- other) you can use this environment too by executing all programs
11
- through ` stack exec -- program ` . This is especially useful if your
3
+ # Developing on Windows #
4
+
5
+ On Windows, Stack comes with an installation of [ MSYS2 ] ( https://www.msys2.org/ ) .
6
+ MSYS2 will be used by Stack to provide a Unix-like shell and environment for
7
+ Stack. This may be necessary for installing some Haskell packages, such as those
8
+ which use ` configure ` scripts. No matter which terminal software you choose
9
+ (Windows Terminal, Console Windows Host, Command Prompt, PowerShell, Git bash or
10
+ any other) you can use this environment too by executing all programs through
11
+ ` stack exec -- <program_name> ` . This is especially useful if your
12
12
project needs some additional tools during the build phase.
13
13
14
- Executables and libraries can be installed with Pacman. All tools can
15
- be found [ in the package
16
- list] ( https://github.com/msys2/msys2/wiki/Packages ) . A [ list of
17
- commands] ( https://github.com/msys2/msys2/wiki/Using-packages ) that
18
- work with Pacman is also available. Just remember that
19
- pacman&mdash ; like all other tools&mdash ; should be started with `stack
20
- exec -- pacman`.
14
+ Executables and libraries can be installed with the MSYS2 package manager
15
+ ` pacman ` . All tools can be found in the
16
+ [ package list] ( https://github.com/msys2/msys2/wiki/Packages ) . A [ list of
17
+ commands] ( https://github.com/msys2/msys2/wiki/Using-packages ) that work with
18
+ ` pacman ` is also available. Just remember that ` pacman ` &mdash ; like all other
19
+ tools &mdash ; should be started with ` stack exec -- pacman ` .
20
+
21
+ The Stack-supplied MSYS2 can itself be updated with the Stack-supplied ` pacman ` .
22
+ See the MSYS2 guide [ 'III. Updating packages'] ( https://www.msys2.org/wiki/MSYS2-installation/ ) . If the Stack-supplied ` pacman ` has a version that is
23
+ 5.0.1.6403 or greater (see ` stack exec -- pacman --version ` ) then the command to
24
+ update is simply:
25
+
26
+ stack exec -- pacman -Syuu
27
+
28
+ This command may need to be run more than once, until everything is reported by ` pacman ` as 'up to date' and 'nothing to do'.
21
29
22
30
## Setup.hs ##
23
31
@@ -27,7 +35,7 @@ with `stack exec --` within the custom `Setup.hs` file.
27
35
28
36
## Pacman packages to install for common Haskell packages ##
29
37
30
- The following lists Pacman packages known to allow the installation of
38
+ The following lists MSYS2 packages known to allow the installation of
31
39
some common Haskell packages on Windows. Feel free to submit
32
40
additional entries via a pull request.
33
41
0 commit comments