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.
POSIX (Linux, MacOS X, UNIX)
(This assumes you want to use the default generator. To use a different generator specify
-G <generator> to the cmake command line. The list of generators supported can be obtained using
cmake ..(You can add
-DCMAKE_INSTALL_PREFIX=/usr/localor some other directory. You can specify a release build with
cmake --build .
ctest -C Debug .
cmake --build . --target installNB: This may have to be done as a privileged user.
ldconfig(As a privileged or root user.)
We normally build a dynamic library (.so or .DLL) by default.
If you want a static library (.a or .LIB), configure by passing
-DNN_STATIC_LIB=ON to the
You will also need to define
NN_STATIC_LIB in your compilation environment when building programs that use this library.
This is required because of the way Windows DLL exports happen. This is not necessary when compiling on POSIX platforms.
When using the static library on Windows, you will also need to link with the ws2_32, mswsock, and advapi32 libraries, as nanomsg depends on them.
POSIX systems will need to link with the libraries normally used when building network applications. For some systems this might mean -lnsl or -lsocket.
Source code: https://github.com/nanomsg/nanomsg
Bug tracker: https://github.com/nanomsg/nanomsg/issues
Mailing list: firstname.lastname@example.org
Gitter Chat: https://gitter.im/nanomsg/nanomsg
IRC chatroom: #nanomsg at irc.freenode.net/8001