Update INSTALL.md installation from source instructions.
This commit is contained in:
parent
97288cea56
commit
3202a288ac
1 changed files with 19 additions and 50 deletions
69
INSTALL.md
69
INSTALL.md
|
@ -215,31 +215,31 @@ The easiest way to build pandoc from source is to use [stack][stack]:
|
||||||
`pandoc` executable into `~/.local/bin`, which you should
|
`pandoc` executable into `~/.local/bin`, which you should
|
||||||
add to your `PATH`. This process will take a while, and
|
add to your `PATH`. This process will take a while, and
|
||||||
will consume a considerable amount of disk space.
|
will consume a considerable amount of disk space.
|
||||||
|
If you also want the `pandoc-server` executable, add
|
||||||
|
`--flag pandoc:server` to the above command.
|
||||||
|
|
||||||
|
|
||||||
### Quick cabal method
|
### Quick cabal method
|
||||||
|
|
||||||
1. Install the [Haskell platform]. This will give you [GHC] and
|
1. Install [ghcup](https://www.haskell.org/ghcup/install/).
|
||||||
the [cabal-install] build tool. Note that pandoc requires
|
This will give you `ghc` and `cabal`.
|
||||||
GHC >= 7.10 and cabal >= 2.0.
|
|
||||||
|
|
||||||
2. Update your package database:
|
2. Update your package database:
|
||||||
|
|
||||||
cabal update
|
cabal update
|
||||||
|
|
||||||
3. Check your cabal version with
|
3. Use `cabal` to install pandoc and its dependencies:
|
||||||
|
|
||||||
cabal --version
|
|
||||||
|
|
||||||
If you have a version less than 2.0, install the latest with:
|
|
||||||
|
|
||||||
cabal install cabal-install
|
|
||||||
|
|
||||||
4. Use `cabal` to install pandoc and its dependencies:
|
|
||||||
|
|
||||||
cabal install pandoc
|
cabal install pandoc
|
||||||
|
|
||||||
This procedure will install the released version of pandoc,
|
This procedure will install the released version of pandoc,
|
||||||
which will be downloaded automatically from HackageDB.
|
which will be downloaded automatically from HackageDB.
|
||||||
|
The `pandoc` executable will be placed in `$HOME/.cabal/bin`
|
||||||
|
on linux/unix/macOS and in `%APPDATA%\cabal\bin` on Windows.
|
||||||
|
Make sure this directory is in your path.
|
||||||
|
|
||||||
|
If you also want the `pandoc-server` executable, add
|
||||||
|
`-fserver` to the above command.
|
||||||
|
|
||||||
If you want to install a modified or development version
|
If you want to install a modified or development version
|
||||||
of pandoc instead, switch to the source directory and do
|
of pandoc instead, switch to the source directory and do
|
||||||
|
@ -247,34 +247,14 @@ The easiest way to build pandoc from source is to use [stack][stack]:
|
||||||
|
|
||||||
cabal install
|
cabal install
|
||||||
|
|
||||||
5. Make sure the `$CABALDIR/bin` directory is in your path. You should
|
4. You should now be able to run `pandoc`:
|
||||||
now be able to run `pandoc`:
|
|
||||||
|
|
||||||
pandoc --help
|
pandoc --help
|
||||||
|
|
||||||
[Not sure where `$CABALDIR` is?](https://wiki.haskell.org/Cabal-Install#The_cabal-install_configuration_file)
|
5. Cabal does not install the `pandoc.1` man page, but you can
|
||||||
|
copy it from the `man/` directory of the source code to
|
||||||
5. By default `pandoc` uses the "i;unicode-casemap" method
|
`/usr/local/share/man/man1/` or wherever man pages go on
|
||||||
to sort bibliography entries (RFC 5051). If you would like to
|
your system.
|
||||||
use the locale-sensitive unicode collation algorithm instead,
|
|
||||||
specify the `icu` flag (which affects the dependency `citeproc`):
|
|
||||||
|
|
||||||
cabal install pandoc -ficu
|
|
||||||
|
|
||||||
Note that this requires the `text-icu` library, which in turn
|
|
||||||
depends on the C library `icu4c`. Installation directions
|
|
||||||
vary by platform. Here is how it might work on macOS with Homebrew:
|
|
||||||
|
|
||||||
brew install icu4c
|
|
||||||
stack install pandoc \
|
|
||||||
--flag "citeproc:icu" \
|
|
||||||
--extra-lib-dirs=/usr/local/opt/icu4c/lib \
|
|
||||||
--extra-include-dirs=/usr/local/opt/icu4c/include
|
|
||||||
|
|
||||||
6. The `pandoc.1` man page will be installed automatically. cabal shows
|
|
||||||
you where it is installed: you may need to set your `MANPATH`
|
|
||||||
accordingly. If `MANUAL.txt` has been modified, the man page can be
|
|
||||||
rebuilt: `make man/pandoc.1`.
|
|
||||||
|
|
||||||
|
|
||||||
### Custom cabal method
|
### Custom cabal method
|
||||||
|
@ -312,6 +292,8 @@ You will need cabal version 2.0 or higher.
|
||||||
|
|
||||||
- `lua53`: embed support for Lua 5.3 instead of 5.4.
|
- `lua53`: embed support for Lua 5.3 instead of 5.4.
|
||||||
|
|
||||||
|
- `server`: build the `pandoc-server` executable.
|
||||||
|
|
||||||
3. Build:
|
3. Build:
|
||||||
|
|
||||||
cabal build
|
cabal build
|
||||||
|
@ -321,19 +303,6 @@ You will need cabal version 2.0 or higher.
|
||||||
|
|
||||||
cabal haddock --html-location=URL --hyperlink-source
|
cabal haddock --html-location=URL --hyperlink-source
|
||||||
|
|
||||||
5. Copy the files:
|
|
||||||
|
|
||||||
cabal copy --destdir=PATH
|
|
||||||
|
|
||||||
The default destdir is `/`.
|
|
||||||
|
|
||||||
6. Register pandoc as a GHC package:
|
|
||||||
|
|
||||||
cabal register
|
|
||||||
|
|
||||||
Package managers may want to use the `--gen-script` option to
|
|
||||||
generate a script that can be run to register the package at
|
|
||||||
install time.
|
|
||||||
|
|
||||||
### Creating a relocatable binary
|
### Creating a relocatable binary
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue