Hexcom is the client library which can be used to communicate with the hexcloud
backend.
vcpkg install grpc --triplet x64-windows
vcpkg install protobuf --triplet x64-windows
vcpkg install boost --triplet x64-windows
Make sure your toolchain is configured for 64 bit builds.
Install dependencies with vcpkg manager:
`vcpkg install grpc --triplet x64-windows`
vcpkg install protobuf --triplet x64-windows
vcpkg install boost --triplet x64-windows
Ninja dramatically accelerates building c++ programs.
The easiest way to install Ninja is with Chocolatey the package manager for Windows. After installing Chocolatey run this command in Powershell (run as Administrator):
choco install ninja
Run CMake like this to enable Ninja:
cmake -GNinja -DCMAKE_BUILD_TYPE=Release
-DCMAKE_C_COMPILER="cl.exe"
-DCMAKE_CXX_COMPILER="cl.exe"
-DBOOST_ROOT=C:/local/boost_1_69_0
In case gRPC doesn't compile you possibly have to point to a valid root certificate. To do this set an environment variable pointing to the root certificate included in the project. This roots.pem is a generic certificate file included with most browsers.
GRPC_DEFAULT_SSL_ROOTS_FILE_PATH=C:/Projects/hexcom/roots.pem
The build is configured with set(OPENSSL_NO_ASM ON)
because the 64bit compile fails to compile the
assembly code in boringssl. In case you want to enable ASM you will have to install YASM.
Installing Yasm is needed so boringssl
dependency can compile.
The easiest way to install is with Chocolatey the package manager for Windows.
After installing Chocolatey run this command in Powershell (run as Administrator):
choco install yasm
Install dependencies with vcpkg manager.
vcpkg can be installed with homebrew
:
brew install vcpkg
vcpkg install protobuf cli boost-program-options
cmake -B build -S . -DCMAKE_TOOLCHAIN_FILE=$HOME/vcpkg/scripts/buildsystems/vcpkg.cmake
Without encryption on localhost:8080
:
hexworld_client --nossl
With encryption and specific server:
hexworld_client --address [address]