88
99Currently [ pre-built binaries] ( https://github.com/haskell/ThreadScope/releases ) for the following platforms are provided:
1010
11- * Ubuntu 18 .04 (64-bit)
12- * macOS 10.15
13- * Windows Server 2019 (x64)
11+ * Ubuntu 24 .04 (64-bit)
12+ * macOS 14.7
13+ * Windows Server 2022 (x64)
1414
15- GTK+2 needs to be installed for these binaries to work.
15+ GTK+3 needs to be installed for these binaries to work.
1616
17- On Windows, the [ MSYS2] ( http://www.msys2.org ) is the recommended way to install GTK+2 . In MSYS2 MINGW64 shell:
17+ On Windows, the [ MSYS2] ( http://www.msys2.org ) is the recommended way to install GTK+3 . In MSYS2 MINGW64 shell:
1818
1919``` sh
20- pacman -S $MINGW_PACKAGE_PREFIX -gtk2
20+ pacman -S $MINGW_PACKAGE_PREFIX -gtk3
2121```
2222
2323then you can run the threadscope binary from the shell.
@@ -26,12 +26,14 @@ then you can run the threadscope binary from the shell.
2626
2727Use ` git clone ` or ` cabal get threadscope ` to get the source and move into the threadscope directory.
2828
29+ The code for the Github Actions is a good guide for building from source.
30+
2931### Linux
3032
31- GTK+2 is required to be installed. On Ubuntu-like systems:
33+ GTK+3 is required to be installed. On Ubuntu-like systems:
3234
3335``` sh
34- sudo apt install libgtk2.0 -dev
36+ sudo apt install libgtk-3 -dev
3537```
3638
3739Then you can build threadscope using cabal:
@@ -53,7 +55,7 @@ stack install # to build and install the binary
5355GTK+ is required:
5456
5557``` sh
56- brew install gtk+
58+ brew install cairo gtk+3 pkg-config
5759```
5860
5961Then you can build threadscope using cabal:
@@ -72,13 +74,16 @@ stack --stack-yaml=stack.osx.yaml install # to install the binary
7274
7375### Windows
7476
77+ > [ !CAUTION]
78+ > The Windows instructions may be out of date. Contributions to update them would be welcome.
79+
7580[ Chocolatey] ( https://chocolatey.org/ ) can be used to install GHC and [ MSYS2] ( https://www.msys2.org/ ) is the recommended way to install GTK+.
7681
7782``` sh
7883choco install ghc
7984refreshenv
8085set PATH=C:\\ msys64\\ mingw64\\ bin; C:\\ msys64\\ usr\\ bin; %PATH%
81- pacman -Sy mingw-w64-x86_64-gtk2
86+ pacman -Sy mingw-w64-x86_64-gtk3
8287```
8388
8489then you can build threadscope using cabal:
@@ -89,7 +94,7 @@ cabal v2-build
8994
9095Or you can use stack instead.
9196
92- CAVEAT: gtk2 needs to be installed twice: one for stack's MSYS2 environment and another for local MSYS2 environment.
97+ CAVEAT: gtk3 needs to be installed twice: one for stack's MSYS2 environment and another for local MSYS2 environment.
9398
9499In command prompt:
95100
@@ -98,14 +103,14 @@ stack setup
98103stack exec -- pacman --needed -Sy bash pacman pacman-mirrors msys2-runtime msys2-runtime-devel
99104stack exec -- pacman -Syu
100105stack exec -- pacman -Syuu
101- stack exec -- pacman -S base-devel mingw-w64-x86_64-pkg-config mingw-w64-x86_64-toolchain mingw-w64-x86_64-gtk2
106+ stack exec -- pacman -S base-devel mingw-w64-x86_64-pkg-config mingw-w64-x86_64-toolchain mingw-w64-x86_64-gtk3
102107stack install
103108```
104109
105110Then in MSYS2 MINGW64 shell:
106111
107112``` sh
108- pacman -S $MINGW_PACKAGE_PREFIX -gtk2
113+ pacman -S $MINGW_PACKAGE_PREFIX -gtk3
109114echo ' export PATH=$APPDATA/local/bin:$PATH' >> .profile
110115source .profile
111116threadscope
0 commit comments