You are generally recommended to use your distro's package manager to install Notcurses; it is available prepackaged on many distributions. Otherwise, acquire the current source via
git clone https://github.com/dankamongmen/notcurses.git
On an APT-based distribution, run:
apt-get install build-essential cmake doctest-dev libavformat-dev libavutil-dev libncurses-dev libreadline-dev libqrcodegen-dev libswscale-dev libunistring-dev pandoc pkg-config
If you only intend to build core Notcurses (without multimedia support), run:
apt-get install build-essential cmake libncurses-dev libreadline-dev libqrcodegen-dev pandoc pkg-config
If you want to build the Python wrappers, you'll also need:
apt-get install python3-cffi python3-dev python3-pypandoc python3-setuptools
If you want to build the Rust wrappers, you'll also need:
apt-get install cargo bindgen
''FIXME''
- Create a subdirectory, traditionally
build(this is not strictly necessary, but it keeps your source tree clean). Enter the directory. cmake ..** You might want to set e.g.CMAKE_BUILD_TYPE. Use-DVAR=val. ** To build without multimedia support, use-DUSE_MULTIMEDIA=none.makemake testmake installsudo ldconfig
The default multimedia engine is FFmpeg. You can select a different engine
using USE_MULTIMEDIA. Valid values are ffmpeg, oiio (for OpenImageIO),
or none. Without a multimedia engine, Notcurses will be unable to decode
images and videos.
Run unit tests with make test following a successful build. If you have unit
test failures, please file a bug including the output of
./notcurses-tester -p ../data
(make test also runs notcurses-tester, but hides important output).
To watch the bitchin' demo, run make demo. More details can
be found on the notcurses-demo(1) man page.
Install with make install following a successful build. This installs the C
core library, the C headers, the C++ library, and the C++ headers (note that
the C headers are C++-safe). It does not install the Python or Rust wrappers.
To install the Python wrappers (after installing the core library), run:
cd cffi
python setup.py build
python setup.py install
The Python wrappers are also available from PyPi. To install the low-level Rust
wrappers (libnotcurses-sys), run:
cd rust
cargo build
cargo install
The Rust wrappers are also available from crates.io.
To set the C compiler, export CC. To set the C++ compiler, export CXX. The
CMAKE_BUILD_TYPE CMake variable can be defined to any of its standard values,
but must be Debug for use of USE_COVERAGE.
DFSG_BUILD: leave out all content considered non-free under the Debian Free Software GuidelinesBUILD_TESTING: build test targetsUSE_COVERAGE: build coverage support (for developers, requires use of Clang)USE_DOCTEST: buildnotcurses-testerwith Doctest, requiresBUILD_TESTINGUSE_DOXYGEN: build interlinked HTML documentation with DoxygenUSE_MULTIMEDIA:ffmpegfor FFmpeg,oiiofor OpenImageIO,nonefor noneUSE_PANDOC: build man pages with pandocUSE_POC: build small, uninstalled proof-of-concept binariesUSE_QRCODEGEN: build qrcode support via libqrcodegenUSE_STATIC: build static libraries (in addition to shared ones)