ethash/1.0.1

C/C++ implementation of Ethash and ProgPoW – the Ethereum Proof of Work algorithms
Recipe info
2023-10-19

Available packages
Linux
Windows
macOS
macOS Apple Silicon

Install
Add the following line to your conanfile.txt:
[requires]
ethash/1.0.1

Using ethash

Note

If you are new with Conan, we recommend to read the section how to consume packages.

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]
ethash/1.0.1
[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("ethash/1.0.1")

    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): ethash
  • CMake target name(s): ethash::ethash
  • ethash => ethash::ethash
    keccak => ethash::keccak
    global_context => ethash::global-context
    
  • pkg-config file name(s): ethash.pc
  • ethash => ethash-ethash.pc
    keccak => ethash-keccak.pc
    global_context => ethash-global_context.pc
    

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

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

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

#include "ethash/ethash.h"
#include "ethash/ethash.hpp"
#include "ethash/global_context.h"
#include "ethash/global_context.hpp"
#include "ethash/hash_types.h"
#include "ethash/hash_types.hpp"
#include "ethash/keccak.h"
#include "ethash/keccak.hpp"
#include "ethash/version.h"