blob: 877c825c09c0a5824d3c3973500e63c9cfabef0f [file] [log] [blame]
Welcome to nanomsg
[![MIT License](](
[![Linux Status](](
[![Windows Status](](
The nanomsg library is a simple high-performance implementation of several
"scalability protocols". These scalability protocols are light-weight messaging
protocols which can be used to solve a number of very common messaging
patterns, such as request/reply, publish/subscribe, surveyor/respondent,
and so forth. These protocols can run over a variety of transports such
as TCP, UNIX sockets, and even WebSocket.
For more information check the [website](
1. Windows.
* Windows Vista or newer (Windows XP and 2003 are *NOT* supported)
* Microsoft Visual Studio 2010 (including C++) or newer, or mingw-w64
(Specifically mingw and older Microsoft compilers are *NOT supported)
* CMake 2.8.7 or newer, available in $PATH as `cmake`
2. POSIX (Linux, MacOS X, UNIX)
* ANSI C compiler supporting C89
* POSIX pthreads (should be present on all modern POSIX systems)
* BSD sockets support for both TCP and UNIX domain sockets
* CMake ( 2.8.7 or newer, available in $PATH as `cmake`
3. Documentation (optional)
* asciidoctor ( available as `asciidoctor`
* If not present, docs are not formatted, but left in readable ASCII
* Also available on-line at
Build it with CMake
1. Go to the root directory of the local source repository.
2. To perform an out-of-source build, run:
3. `mkdir build`
4. `cd build`
5. `cmake ..`
(You can add -DCMAKE_INSTALL_PREFIX=/usr/local or some other directory.)
6. `cmake --build .`
7. `ctest .`
8. `cmake --build . --target install`
*NB:* This may have to be done as a privileged user.
9. (Linux only). `ldconfig` (As a privileged or root user.)
Website: [](
Source code: [](
Documentation: [](
Bug tracker: [](
Mailing list: [](
Gitter Chat: [](
IRC chatroom: [#nanomsg at](