Minimal C++ library template for Wombat-CC projects.
zig fetch --save=wombat_cc_lib_cpp_template https://github.com/cdenihan/Wombat-CC-CPP-Library-Template/archive/refs/heads/master.tar.gz
zig buildbuild.zigexports artifactliband named lazy pathincludeinclude/+src/provide your C++ API and implementation
- Rename package in
build.zig.zon - Rename
LibraryTemplate.hpp/.cppand replace API - Keep artifact name
libfor root auto-linker compatibility
#include <LibraryTemplate.hpp>
int main() {
const int sum = LibraryTemplate::Add(2, 3);
(void)sum;
return 0;
}Zig cannot directly use C++ classes. Add a C ABI shim in your library (for example library_template_c_api.h/.cpp) and call it via @cImport:
const lib = @cImport(@cInclude("library_template_c_api.h"));
pub fn main() void {
const sum = lib.library_template_add(2, 3);
_ = sum;
}