download_ghc_8_4_3.shtml 9.78 KB
Newer Older
Ben Gamari's avatar
Ben Gamari committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141
---
version: 8.4.3
date: 29 May 2018
---

<h1>Version 8.4.3 (released 29<sup>th</sup> May 2018)</h1>

<div class="box">
    <h1>Take Notice</h1>
    <p>
      The packages on this page include only the GHC compiler. For most users,
      we recommend installing a
      <a href="http://www.haskell.org/downloads">proper Haskell distribution</a>
      instead of GHC alone. A distribution includes a recent GHC release as well
      as other important tools (such as <code>cabal-install</code>, for
      installing libraries), and potentially a broader set of libraries known to
      work together.
    </p>
</div>

<div class="box">
    <h1>Bundled packages and cabal-install</h1>
    <p>
      GHC 8.4 only works
      with <a href="http://hackage.haskell.org/package/cabal-install"><code>cabal-install</code></a>
      version 2.2 or later. Please upgrade if you have an older version of
      <code>cabal-install</code>.
    </p>
</div>

<div class="box">
    <h1>Optional LLVM dependency</h1>
    <p>
      GHC has an optional code generator targetting
      the <a href="http://www.llvm.org/">LLVM</a> compiler framework which can
      produce faster code for some programs. If you would like to use the LLVM
      backend, you'll need to install LLVM 5.0 from
      an <a href="http://llvm.org/releases/download.html#5.0.1">upstream binary
      distribution</a> or via your distribution's package manager.
    </p>
</div>

<h2>Contents</h2>

<ul>
  <li><a href="$downloads_url$/docs/html/users_guide/8.4.3-notes.html">Release Notes</a></li>
	<li><a href="$downloads_url$/docs/html/">Documentation</a></li>
  <li><a href="#distros">Distribution packages</a></li>
  <li><a href="#binaries">Binary packages</a></li>
  <li><a href="#sources">Source distribution</a></li>
</ul>

<div class="section" id="distros">
    <h2>Distribution packages</h2>
    <p>
      GHC is packaged for a number of operating systems and
      distributions. While they may lag behind the latest GHC
      release, advantages such as dependency checking and ease of
      uninstallation mean we recommend using them anyway, unless
      you have a particular need for new features or bug fixes.
    </p>
    <ul>
      <li><a href="distribution_packages.html">Distribution packages</a></li>
    </ul>
</div>

<div class="section" id="binaries">
    <h2>Binary Packages</h2>

    <p>
      The operating system-specific packages (e.g. RPM or <tt>.deb</tt> packages
      on Linux) are generally a better bet than the vanilla <tt>.tar.xz</tt>
      binary bundles, because they will check for dependencies and allow the
      package to be uninstalled at a later date.
    </p>

    <p>
      However, if you don't have permission to install binaries on your system,
      or you want to install somewhere other than the default place
      (<tt>/usr</tt> or <tt>/usr/local</tt> on a Unix system), then you'll need
      to use a <tt>.tar.xz</tt> binary bundle.
    </p>

    <p>
      SHA-256 hashes for all of these binary distributions are
      available <a href="$downloads_url$/SHA256SUMS">here</a>.
    </p>

    <p>
      All of these tarballs are have associated GPG signatures. Unless otherwise
      noted the signature should be from <code>Benjamin Gamari
      &lt;ben@well-typed.com&gt;</code> (key
      ID <a href="http://pgp.mit.edu/pks/lookup?op=vindex&search=0x2DE04D4E97DB64AD">97DB64AD</a>).
    </p>

    <div style="border:1px solid; background:#ffffc6; padding: 10px">
        <p>Supported platforms:</p>

        <ul>
        <li><a href="#linux_i386">Linux (x86)</a></li>
        <li><a href="#linux_x86_64">Linux (x86_64)</a></li>
        <!--<li><a href="#linux_armv7">Linux (ARMv7)</a></li>-->
        <li><a href="#linux_aarch64">Linux (AArch64)</a></li>
        <li><a href="#windows">Windows (x86)</a></li>
        <li><a href="#windows64">Windows (x86_64)</a></li>
        <li><a href="#macosx_x86_64">Mac OS X (x86_64)</a></li>
        <li><a href="#freebsd11_x86_64">FreeBSD 11 (x86_64)</a></li>
        <!-- <li><a href="#freebsd_11_i386">FreeBSD 11 (x86)</a></li>
        <li><a href="#freebsd_10_i386">FreeBSD 10.3 (x86)</a></li>
        <li><a href="#openbsd_61_x86_64">OpenBSD 6.1 (x86_64)</a></li>
        <li><a href="#openbsd_60_x86_64">OpenBSD 6.0 (x86_64)</a></li> -->
        </ul>
    </div>

    <h2>Supported platforms</h2>

    <div class="section" id="linux_i386">
        <h3>Linux (x86)</h3>

        <div>
            <h4>Debian 8</h4>
            <p>
            Generic i386 Linux. This is a complete build, including
            interactive system, profiling libraries and documentation. It was
            made on a Debian 8 "Jessie" system and requires
            <code>libgmp.so.10</code> (typically GMP 5.x).
            </p>
            $tarballs("i386-deb8-linux")$
        </div>
    </div>

    <div class="section" id="linux_x86_64">
        <h3>Linux (x86_64)</h3>

        <div>
          <h4>Debian 9</h4>
          <p>
            Generic amd64 Linux. This is a complete build, including
            interactive system, profiling libraries and documentation. It was
            made on a Debian 9 "Stretch" system and requires GMP 6.0.
          </p>
Ben Gamari's avatar
Ben Gamari committed
142
          $tarballs("x86_64-deb9-linux")$
Ben Gamari's avatar
Ben Gamari committed
143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278
        </div>
        <div>
          <h4>Debian 8</h4>
          <p>
            Generic amd64 Linux. This is a complete build, including
            interactive system, profiling libraries and documentation. It was
            made on a Debian 8 "Jessie" system and requires
            <code>libgmp.so.10</code> (typically GMP 5.x).
          </p>
          $tarballs("x86_64-deb8-linux")$
        </div>

        <div>
          <h4>Debian 8 (with DWARF support)</h4>
          <p>
            Generic amd64 Linux with stack unwinding support and debug symbols
            for core libraries. This is a complete build, including interactive
            system, profiling libraries and documentation. It was made on a
            Debian 8 "Jessie" system and requires
            <code>libgmp.so.10</code> (typically GMP 5.x) as well
            as <code>libdw</code>.
          </p>
          $tarballs("x86_64-deb8-linux-dwarf")$
        </div>

        <div>
          <h4>Fedora 27</h4>
          <p>
            Generic amd64 Linux.  This is a complete build, including interactive
            system, profiling libraries and documentation. It was made on a
            Fedora 27 system and requires GMP 6.1.
          </p>
          $tarballs("x86_64-fedora27-linux")$
        </div>
    </div>

    <!--
    <div class="section" id="linux_armv7">
        <h3>Linux (ARMv7)</h3>
        $tarballs("armv7-deb8-linux")$
        <p>
          Generic 32-bit ARM Linux (hard-float).
        </p>
        <p>
          Note: These builds were prepared on Debian Jessie. Note that ARM
          support is still a bit experimental. This build requires LLVM.
          Due to <a href="https://sourceware.org/bugzilla/show_bug.cgi?id=16177">bugs</a>
          in BFD <code>ld</code> it is necessary to use the <code>gold</code> linker.
        </p>
    </div>

    <div class="section" id="linux_aarch64">
        <h3>Linux (AArch64)</h3>
        $tarballs("aarch64-deb8-linux")$
        <p>
          Generic 64-bit AArch64 Linux.
        </p>
        <p>
          Note: These builds were prepared on Debian Jessie. Note that AArch64
          support is still a bit experimental. This build requires LLVM.
        </p>
    </div>
    -->

    <div class="section" id="windows">
        <h3>Windows (x86)</h3>
        $tarballs("i386-unknown-mingw32")$
        <p>
          This is compatible with Microsoft Windows Vista and later.  It also
          includes support for compiling C++ files.
        </p>
    </div>

    <div class="section" id="windows64">
        <h3>Windows 64-bit (x86_64)</h3>
        $tarballs("x86_64-unknown-mingw32")$
        <p>
          This is compatible with Microsoft Windows Vista and later.  It also
          includes support for compiling C++ files.
        </p>
    </div>

    <div class="section" id="macosx_x86_64">
        <h3>Mac OS X (x86_64)</h3>
        $tarballs("x86_64-apple-darwin")$
        <p>
            This is a distribution for Mac OS X, 10.7 or later. The package
            requires the command line tools package of Xcode 4 or XCode 5 to be installed.
            You can find Xcode at
            <a href="http://developer.apple.com/">http://developer.apple.com/</a>.
        </p>
    </div>

    <div class="section" id="freebsd11_x86_64">
        <h3>FreeBSD 11 (x86_64)</h3>
        $tarballs("x86_64-portbld-freebsd")$
        <p>
            This is a distribution for FreeBSD 11 or later.
        </p>
    </div>
</div>

<div class="section" id="sources">
    <h2>Source Distribution</h2>
    <p>
      The source tarballs provide everything necessary to build the compiler,
      interactive system, and a minimal set of libraries. For more information
      on building, see
      the <a href="http://hackage.haskell.org/trac/ghc/wiki/Building">building
      guide</a>.
    </p>
    $tarballs("src")$

    <p>
      The testsuite provides a thorough set of tests for validating your build.
      Unpack this tarball on top of the regular source distribution in order to
      run the testsuite (see
      the <a href="https://ghc.haskell.org/trac/ghc/wiki/Building/RunningTests">testing
      guide</a> for details).
    </p>
    $tarballs("testsuite")$

    <p>
      Building on Windows requires a set of additional tools. Extract this tarball on
      top of the regular source distribution,
    </p>
    $tarballs("windows-extra-src")$

    <p>
      The source distribution needs an installed GHC (version 8.0 at least). If
      your platform isn't currently supported with a binary distribution, then
      you'll need to consult the section
      on <a href="http://hackage.haskell.org/trac/ghc/wiki/Building/Porting">Porting
      GHC</a> in the Building Guide.
    </p>
</div>