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
|
<!-- Copyright 2022 David Robillard <d@drobilla.net> -->
<!-- SPDX-License-Identifier: ISC -->
Installation Instructions
=========================
Prerequisites
-------------
To build from source, you will need:
* A relatively modern C compiler (GCC, Clang, and MSVC are known to work).
* [Meson](http://mesonbuild.com/), which depends on
[Python](http://python.org/).
This is a brief overview of building this project with meson. See the meson
documentation for more detailed information.
Configuration
-------------
The build is configured with the `setup` command, which creates a new build
directory with the given name:
meson setup build
Some environment variables are read during `setup` and stored with the
configuration:
* `CC`: Path to C compiler.
* `CFLAGS`: C compiler options.
* `LDFLAGS`: Linker options.
However, it is better to use meson options for configuration. All options can
be inspected with the `configure` command from within the build directory:
cd build
meson configure
Options can be set by passing C-style "define" options to `configure`:
meson configure -Dc_args="-march=native" -Dprefix="/opt/mypackage/"
Note that some options, such as `strict` and `werror` are for
developer/maintainer use only. Please don't file issues about anything that
happens when they are enabled.
Building
--------
From within a configured build directory, everything can be built with the
`compile` command:
meson compile
Similarly, tests can be run with the `test` command:
meson test
Meson can also generate a project for several popular IDEs, see the `backend`
option for details.
Installation
------------
A compiled project can be installed with the `install` command:
meson install
You may need to acquire root permissions to install to a system-wide prefix.
For packaging, the installation may be staged to a directory using the
`DESTDIR` environment variable or the `--destdir` option:
DESTDIR=/tmp/mypackage/ meson install
meson install --destdir=/tmp/mypackage/
|