marl

(β˜… 2,000)

A hybrid thread / fiber task scheduler written in C++ 11

  • .clang-format
  • .gitignore
  • .gitmodules
  • AUTHORS
  • BUILD.bazel
  • CHANGES.md
  • CMakeLists.txt
  • CONTRIBUTING.md
  • go.mod
  • LICENSE
  • license-checker.cfg
  • README.md
  • WORKSPACE

πŸš€ Installation Guide

1. Get the code
git clone https://github.com/google/marl

Downloads the entire project code from GitHub to your computer.

cd marl

Moves into the project folder you just downloaded.

2. CMake

Medium Recommended
Prerequisites
  • Git Needed to download the project code from GitHub.
  • CMake The tool used to generate build configuration.
  • C/C++ 컴파일러 Windows needs Visual Studio (Community edition, free), macOS needs Xcode Command Line Tools, Linux needs the gcc/g++ package.
cmake .. -DMARL_BUILD_EXAMPLES=1 -DMARL_BUILD_TESTS=1

Analyzes the source code and generates build configuration files (must be run inside the build folder).

emcmake cmake .. -DMARL_BUILD_EXAMPLES=1

Type this command into your terminal and run it.

Marl can be built using [Visual Studio 2019's CMake integration](https://docs.microsoft.com/en-us/cpp/build/cmake-projects-in-visual-studio?view=vs-2019).

Type this command into your terminal and run it.

βœ… Check that an executable was created inside the build folder, then run it directly (e.g. ./build/app_name).

Pulled directly from this repo's README.

3. Go

Medium
Prerequisites
  • Git Needed to download the project code from GitHub.
  • Go The Go compiler and toolchain.
go build ./...

Compiles the Go program into an executable.

go run .

Runs the Go program directly without a separate build step.

βœ… If the build finishes without errors, it worked. If you used go run ., check the terminal output.
// repository documentation