Welcome to tmux!
tmux is a terminal multiplexer: it enables a number of terminals to be created, accessed, and controlled from a single screen. tmux may be detached from a screen and continue running in the background, then later reattached.
This release runs on OpenBSD, FreeBSD, NetBSD, Linux, macOS and Solaris.
tmux depends on libevent 2.x, available from this page.
It also depends on ncurses, available from this page.
To build tmux, a C compiler (for example gcc or clang), make, pkg-config and a suitable yacc (yacc or bison) are needed.
Some platforms provide binary packages for tmux, although these are sometimes out of date. Examples are listed on this page.
From release tarball
To build and install tmux from a release tarball, use:
./configure && make sudo make install
tmux can use the utempter library to update utmp(5), if it is installed - run
--enable-utempter to enable this.
For more detailed instructions on building and installing tmux, see this page.
From version control
To get and build the latest from version control - note that this requires
git clone https://github.com/tmux/tmux.git cd tmux sh autogen.sh ./configure && make
Bug reports, feature suggestions and especially code contributions are most welcome. Please send by email to:
Or open a GitHub issue or pull request. Please read this document before opening an issue.
There is a list of suggestions for contributions. Please feel free to ask on the mailing list if you're thinking of working on something or need further information.
For documentation on using tmux, see the tmux.1 manpage. View it from the source tree with:
nroff -mdoc tmux.1|less
A small example configuration is in
And a bash(1) completion file at:
For debugging, run tmux with
-vv to generate server and client log
files in the current directory.
The tmux mailing list for general discussion and bug reports is:
Subscribe by sending an email to: