使用 cmake 在 Docker 中构建 Iroha

Building Iroha in Docker with cmake

我尝试使用 Doker 构建 Iroha Hyperledger。在我克隆图像并尝试使用 CMake

执行构建之后
cmake -H. -Bbuild -DCMAKE_TOOLCHAIN_FILE=/opt/dependencies/scripts/buildsystems/vcpkg.cmake -G "Ninja"

我收到这个错误:

Could not find toolchain file:
  /opt/dependencies/scripts/buildsystems/vcpkg.cmake
Call Stack (most recent call first):
  CMakeLists.txt:12 (PROJECT)

我用CMake 3.16

任何帮助

您应该在构建 iroha 之前构建 vcpkg 并安装 vcpkg 包。请参考the docs.

要执行的命令(如@kyb 所说)并根据 instruction:

  1. 正在安装依赖项:
apt-get update; \
apt-get -y --no-install-recommends install \
build-essential ninja-build \
git ca-certificates tar curl unzip cmake
  1. 正在克隆 iroha:
git clone https://github.com/hyperledger/iroha.git
  1. 构建依赖项:
iroha/vcpkg/build_iroha_deps.sh
vcpkg/vcpkg integrate install

结果你会看到这样的命令:

-DCMAKE_TOOLCHAIN_FILE=/path/to/vcpkg/scripts/buildsystems/vcpkg.cmake
  1. 最后,您需要将命令添加到 CMake 命令(如您提供的那样):
cmake -H. -Bbuild -DCMAKE_TOOLCHAIN_FILE=/opt/dependencies/scripts/buildsystems/vcpkg.cmake -G "Ninja"
  1. 最后一步是 运行 忍者:
cmake --build . --target irohad -- -j<number of threads>
  1. 您可以选择安装二进制文件:
cmake --install . --target irohad