mirror of https://github.com/xzeldon/htop.git
README updates/formating
Formating add section "prerequisite" To make it easy to build Merged Compiling from source and Github tarball ref: #639 removed tarball downloads #680
This commit is contained in:
parent
e7aaf79166
commit
9bba1c6cf7
52
README
52
README
|
@ -24,25 +24,43 @@ For more information and details on how to contribute to `htop` visit [htop.dev]
|
||||||
|
|
||||||
## Build instructions
|
## Build instructions
|
||||||
|
|
||||||
This program is distributed as a standard GNU autotools-based package.
|
### Prerequisite
|
||||||
|
List of build-time dependencies:
|
||||||
|
* `build-essential` standard GNU autotools-based
|
||||||
|
* `autoconf`
|
||||||
|
* `autotools`
|
||||||
|
* `ncurses` (libncursesw*-dev)
|
||||||
|
|
||||||
Compiling `htop` requires the header files for `ncurses` (libncursesw*-dev). Install these and other required packages for C development from your package manager.
|
**Note about `ncurses`:**
|
||||||
|
> htop requires ncurses 6.0, the appropriate package is often enough still called libncurses5 (+-dev for headers). Also ncurses usually comes in two flavours:
|
||||||
|
>* With Unicode support.
|
||||||
|
>* Without Unicode support.
|
||||||
|
>
|
||||||
|
> This is also something that is usually reflected in the package name (the additional w).
|
||||||
|
|
||||||
Then, when compiling from a [release tarball](https://github.com/htop-dev/htop/releases), run:
|
List of additional build-time dependencies (based on feature flags):
|
||||||
|
* `sensors`
|
||||||
|
* `hwloc`
|
||||||
|
* `libcap`
|
||||||
|
|
||||||
|
Compiling `htop` requires the header files for `ncurses` . Install these and other required packages for C development from your package manager.
|
||||||
|
|
||||||
|
**Debian/Ubuntu**
|
||||||
~~~ shell
|
~~~ shell
|
||||||
./configure && make
|
sudo apt install libncursesw5-dev autotools-dev autoconf
|
||||||
~~~
|
~~~
|
||||||
|
|
||||||
Alternatively, for compiling sources downloaded from the Git repository (`git clone` or downloads from [Github releases](https://github.com/htop-dev/htop/releases/)),
|
### Compiling from source:
|
||||||
install the header files for `ncurses` (libncursesw*-dev) and other required development packages from your distribution's package manager. Then run:
|
To compiling from sources downloaded from the Git repository (`git clone` or downloads from [Github releases](https://github.com/htop-dev/htop/releases/)), then run:
|
||||||
|
|
||||||
~~~ shell
|
~~~ shell
|
||||||
./autogen.sh && ./configure && make
|
./autogen.sh && ./configure && make
|
||||||
~~~
|
~~~
|
||||||
|
|
||||||
By default `make install` will install into `/usr/local`, for changing the path use `./configure --prefix=/some/path`.
|
By default `make install` will install into `/usr/local`, for changing the path use `./configure --prefix=/some/path`.
|
||||||
|
|
||||||
|
### Install
|
||||||
|
To install to system run `make install`. By default `make install` installs into `/usr/local`. To change this path use `./configure --prefix=/some/path`.
|
||||||
|
|
||||||
### Build Options
|
### Build Options
|
||||||
|
|
||||||
`htop` has several build-time options to enable/disable additional features.
|
`htop` has several build-time options to enable/disable additional features.
|
||||||
|
@ -94,8 +112,26 @@ By default `make install` will install into `/usr/local`, for changing the path
|
||||||
dependencies: *pkg-config*(build-time), *libnl-3* and *libnl-genl-3*
|
dependencies: *pkg-config*(build-time), *libnl-3* and *libnl-genl-3*
|
||||||
default: *check*
|
default: *check*
|
||||||
|
|
||||||
## Usage
|
|
||||||
|
|
||||||
|
## Runtime dependencies:
|
||||||
|
`htop` has a set of fixed minimum runtime dependencies, which is kept as minimal as possible:
|
||||||
|
* `ncurses` libraries for terminal handling (wide character support).
|
||||||
|
|
||||||
|
### Runtime optional dependencies:
|
||||||
|
`htop` has a set of fixed optional dependencies, depending on build/configure option used:
|
||||||
|
* `libdl`, if not building static and support for some of the optional libraries is enabled, is always required when support for to optionally load dependencies (i.e. `libsensors`, `systemd`) is present.
|
||||||
|
* `libcap`, user-space interfaces to the POSIX 1003.1e, is always required when `--enable-capabilities` was used to configure `htop`.
|
||||||
|
* `libsensors`, readout of temperatures and CPU speeds, is optional even when `--enable-sensors` was used to configure `htop`.
|
||||||
|
* `systemd` is optional when `--enable-static` was not used to configure `htop` (Linux only). If building statically and `libsystemd` is not found by `configure` support for the SystemD meter is disabled entirely.
|
||||||
|
|
||||||
|
`htop` checks for the availability of the actual runtime lib as `htop` runs.
|
||||||
|
|
||||||
|
**BSD**
|
||||||
|
On most *BSD systems you also have `kvm` as a static requirement to read all the kernel information.
|
||||||
|
|
||||||
|
More information on required and optional dependencies can be found in [configure.ac](configure.ac).
|
||||||
|
|
||||||
|
## Usage
|
||||||
See the manual page (`man htop`) or the on-line help ('F1' or 'h' inside `htop`) for a list of supported key commands.
|
See the manual page (`man htop`) or the on-line help ('F1' or 'h' inside `htop`) for a list of supported key commands.
|
||||||
|
|
||||||
## Support
|
## Support
|
||||||
|
|
Loading…
Reference in New Issue