nuraft/2.1.0

Cornerstone based RAFT library.
Recipe info
2024-01-31

Available packages
Linux
Windows
macOS
macOS Apple Silicon

Install
Add the following line to your conanfile.txt:
[requires]
nuraft/2.1.0

Using nuraft

Note

If you are a new Conan user, we recommend reading the how to consume packages tutorial.

If you need additional assistance, please ask a question in the Conan Center Index repository.

Simplest use case consuming this recipe and assuming CMake as your local build tool:

[requires]
nuraft/2.1.0
[generators]
CMakeDeps
CMakeToolchain
[layout]
cmake_layout
from conan import ConanFile
from conan.tools.cmake import cmake_layout


class ExampleRecipe(ConanFile):
    settings = "os", "compiler", "build_type", "arch"
    generators = "CMakeDeps", "CMakeToolchain"

    def requirements(self):
        self.requires("nuraft/2.1.0")

    def layout(self):
        cmake_layout(self)

Now, you can run this Conan command to locally install (and build if necessary) this recipe and its dependencies (if any):

$ conan install conanfile.txt --build=missing

Useful information to take into account to consume this library:


These are the main declared targets:

  • CMake package name(s): nuraft
  • CMake target name(s): nuraft::nuraft
  • pkg-config file name(s): nuraft.pc

A simple use case using the CMake file name and the global target:

# ...
find_package(nuraft REQUIRED)
# ...
target_link_libraries(YOUR_TARGET nuraft::nuraft)

These are all the available headers. Some of these ones might be non-public; make sure of it by visiting the nuraft homepage listed above:

#include "libnuraft/asio_service.hxx"
#include "libnuraft/asio_service_options.hxx"
#include "libnuraft/async.hxx"
#include "libnuraft/attr_unused.hxx"
#include "libnuraft/basic_types.hxx"
#include "libnuraft/buffer.hxx"
#include "libnuraft/buffer_serializer.hxx"
#include "libnuraft/callback.hxx"
#include "libnuraft/cluster_config.hxx"
#include "libnuraft/context.hxx"
#include "libnuraft/debugging_options.hxx"
#include "libnuraft/delayed_task.hxx"
#include "libnuraft/delayed_task_scheduler.hxx"
#include "libnuraft/error_code.hxx"
#include "libnuraft/global_mgr.hxx"
#include "libnuraft/internal_timer.hxx"
#include "libnuraft/launcher.hxx"
#include "libnuraft/log_entry.hxx"
#include "libnuraft/log_store.hxx"
#include "libnuraft/log_val_type.hxx"
#include "libnuraft/logger.hxx"
#include "libnuraft/msg_base.hxx"
#include "libnuraft/msg_type.hxx"
#include "libnuraft/nuraft.hxx"
#include "libnuraft/peer.hxx"
#include "libnuraft/pp_util.hxx"
#include "libnuraft/ptr.hxx"
#include "libnuraft/raft_params.hxx"
#include "libnuraft/raft_server.hxx"
#include "libnuraft/raft_server_handler.hxx"
#include "libnuraft/req_msg.hxx"
#include "libnuraft/resp_msg.hxx"
#include "libnuraft/rpc_cli.hxx"
#include "libnuraft/rpc_cli_factory.hxx"
#include "libnuraft/rpc_exception.hxx"
#include "libnuraft/rpc_listener.hxx"
#include "libnuraft/snapshot.hxx"
#include "libnuraft/snapshot_sync_ctx.hxx"
#include "libnuraft/snapshot_sync_req.hxx"
#include "libnuraft/srv_config.hxx"
#include "libnuraft/srv_role.hxx"
#include "libnuraft/srv_state.hxx"
#include "libnuraft/state_machine.hxx"
#include "libnuraft/state_mgr.hxx"
#include "libnuraft/strfmt.hxx"
#include "libnuraft/timer_task.hxx"