... | ... | @@ -9,8 +9,8 @@ If you're on a recent Linux system, then you should be able to get a working bui |
|
|
If you are familiar with docker and comfortable doing all your work in the docker container with a default bash shell. This is a 1 step install for a development image (ghc build requirements plus a few development related tools). The runghc binary can not be run outside of the docker container because GHC will be compiled with paths only available in the container.
|
|
|
First cd into your ghc directory that you should check out according to [Building/GettingTheSources](building/getting-the-sources), then declare `DOCKER_ENV=9e4c540d9e4972a36291dfdf81f079f37d748890`. For the latest revision, check the [.gitlab-ci.yml](https://gitlab.haskell.org/ghc/ghc/-/blob/master/.gitlab-ci.yml#L5). Finally,
|
|
|
|
|
|
```bash
|
|
|
sudo docker run --rm -i -t -v `pwd`:/home/ghc registry.gitlab.haskell.org/ghc/ci-images/x86_64-linux-deb10:$DOCKER_ENV /bin/bash
|
|
|
```
|
|
|
$ sudo docker run --rm -i -t -v `pwd`:/home/ghc registry.gitlab.haskell.org/ghc/ci-images/x86_64-linux-deb10:$DOCKER_ENV /bin/bash
|
|
|
```
|
|
|
|
|
|
That's it!
|
... | ... | @@ -23,18 +23,20 @@ Note that `arc` (the GHC patch submission tool) is installed in the image (altho |
|
|
|
|
|
Install the [required tools](https://gitlab.haskell.org/ghc/ghc/-/wikis/building/preparation/tools) using the following command for Fedora 22 and later (for earlier versions of Fedora, use `yum` instead of `dnf`):
|
|
|
|
|
|
```shell
|
|
|
sudo dnf install glibc-devel ncurses-devel gmp-devel autoconf automake libtool gcc gcc-c++ make perl python ghc happy alex git
|
|
|
```
|
|
|
$ sudo dnf install glibc-devel ncurses-devel gmp-devel autoconf automake libtool gcc gcc-c++ make perl python ghc happy alex git
|
|
|
```
|
|
|
|
|
|
|
|
|
For building the documentation: (User's Guide and Cabal guide):
|
|
|
(optional)
|
|
|
|
|
|
```shell
|
|
|
# GHC > 7.10
|
|
|
GHC > 7.10:
|
|
|
```
|
|
|
sudo dnf install python3-sphinx
|
|
|
# GHC <= 7.10
|
|
|
```
|
|
|
```
|
|
|
for GHC <= 7.10:
|
|
|
sudo dnf install docbook-utils docbook-utils-pdf docbook-style-xsl
|
|
|
```
|
|
|
|
... | ... | @@ -42,8 +44,8 @@ For building the documentation: (User's Guide and Cabal guide): |
|
|
other packages that are useful for development:
|
|
|
(optional)
|
|
|
|
|
|
```shell
|
|
|
sudo dnf install strace patch
|
|
|
```
|
|
|
$ sudo dnf install strace patch
|
|
|
```
|
|
|
|
|
|
|
... | ... | @@ -59,16 +61,16 @@ For a quickstart, follow the commands listed under: |
|
|
|
|
|
You can make sure you have all dependencies by
|
|
|
|
|
|
```shell
|
|
|
sudo apt-get build-dep ghc
|
|
|
```
|
|
|
$ sudo apt-get build-dep ghc
|
|
|
```
|
|
|
|
|
|
|
|
|
But this might install some packages you do not use in your system (e.g. Sphinx). Alternatively install the following:
|
|
|
|
|
|
```
|
|
|
sudo apt-get install build-essential git autoconf python3 libgmp-dev libnuma-dev libncurses-dev
|
|
|
cabal v2-install alex happy
|
|
|
$ sudo apt-get install build-essential git autoconf python3 libgmp-dev libnuma-dev libncurses-dev
|
|
|
$ cabal v2-install alex happy
|
|
|
```
|
|
|
|
|
|
|
... | ... | @@ -80,11 +82,13 @@ Optional: install LLVM from \<[http://apt.llvm.org](http://apt.llvm.org)\> (only |
|
|
|
|
|
For building the documentation (User's Guide):
|
|
|
|
|
|
```shell
|
|
|
# GHC > 7.10:
|
|
|
sudo apt-get install python3-sphinx texlive-xetex texlive-fonts-recommended fonts-lmodern texlive-latex-recommended texlive-latex-extra
|
|
|
# GHC <= 7.10:
|
|
|
sudo apt-get install dblatex docbook-xsl docbook-utils libxml2-utils texlive-font-utils
|
|
|
for GHC > 7.10:
|
|
|
```
|
|
|
$ sudo apt-get install python3-sphinx texlive-xetex texlive-fonts-recommended fonts-lmodern texlive-latex-recommended texlive-latex-extra
|
|
|
```
|
|
|
for GHC <= 7.10:
|
|
|
```
|
|
|
$ sudo apt-get install dblatex docbook-xsl docbook-utils libxml2-utils texlive-font-utils
|
|
|
```
|
|
|
|
|
|
|
... | ... | |