catch2

Catch2 is a multi-paradigm test framework for C++. which also supports Objective-C (and maybe C).

Latest version: 3.16.1

Add to xmake.lua

add_requires("catch2 3.16.1")

Learn how to add and link packages with Xmake →

Information

License
BSL-1.0
Recipe updated
2026-10-27T06:54:57.000Z

Platforms

  • android: armeabi, armeabi-v7a, arm64-v8a, riscv64, x86, x86_64, mips, mip64
  • msys: i386, x86_64
  • mingw: i386, x86_64, arm, arm64
  • windows: x86, x64, arm, arm64, arm64ec
  • linux: i386, x86_64, armv7, armv7s, arm64, mips, mips64, mipsel, mips64el, loong64, riscv64, s390x, ppc, ppc64, ppc64el, sparc64
  • bsd: i386, x86_64, arm, arm64, ppc, ppc64, ppc64el, riscv64, sparc64
  • harmony: armeabi-v7a, arm64-v8a, x86, x86_64
  • cross: i386, x86_64, arm, armv7, arm64, mips, mips64, mips64el, riscv, riscv64, loong64, s390x, ppc, ppc64, ppc64el, sh4, sparc64
  • wasm: wasm32, wasm64
  • iphoneos: arm64, x86_64
  • macosx: x86_64, arm64

Options

cxx17
Compiles Catch as a C++17 library (requires a C++17 compiler). · Type: boolean · Default: true

Versions

  • v2.9.2
  • v2.13.5
  • v2.13.6
  • v2.13.7
  • v2.13.8
  • v2.13.9
  • v2.13.10
  • v3.1.0
  • v3.1.1
  • v3.2.0
  • v3.2.1
  • v3.3.2
  • v3.4.0
  • v3.5.0
  • v3.5.1
  • v3.5.2
  • v3.5.3
  • v3.5.4
  • v3.6.0
  • v3.7.0
  • v3.7.1
  • v3.8.0
  • v3.8.1
  • v3.9.0
  • v3.10.0
  • v3.11.0
  • v3.12.0
  • v3.13.0
  • v3.14.0
  • v3.15.0
  • v3.15.1
  • v3.15.2
  • v3.16.0
  • v3.16.1

Dependencies

No dependencies declared.

Install with xrepo

Install the package independently of a project and inspect its available configuration.

install

xrepo install "catch2 3.16.1"

show info

xrepo info "catch2"

Link a library to your target

Declare the requirement, then attach the library to the target that uses it.

xmake.lua

add_requires("catch2 3.16.1")

target("demo")
    set_kind("binary")
    add_files("src/*.cpp")
    add_packages("catch2")

Open a package environment

Open a shell with the environment exported by this package. Use the executable names documented by the package.

enter shell

xrepo env -b "catch2 3.16.1" shell