|
PineForge v0.1.2-7-ga095e36
Deterministic PineScript v6 backtest runtime — C ABI reference
|
PineForge installs a standard CMake package config. Downstream projects pull it in with one find_package call.
That's it. PineForge::pineforge is an IMPORTED INTERFACE target that carries:
<pineforge/pineforge.h>libpineforge.aIf you installed to a non-standard prefix:
Or set CMAKE_PREFIX_PATH=/opt/pineforge.
Within a major version PineForge guarantees C ABI back-compat — see ABI stability — so 0.1 (any compatible 0.x.y) is the recommended pin.
-lstdc++ is required even from C TUs because the runtime is C++ inside. -lm covers the math.h calls inside the runtime's TA classes.
PineForge does not ship a pkg-config .pc file (the CMake config is the canonical surface). If you need one, generate it from the PineForgeConfig.cmake properties at install time, or hand-roll one:
A compiled PineForge strategy is a separate shared object that also exports the public C ABI symbols (strategy_create, run_backtest, …). Each strategy .so statically links libpineforge.a internally; the runtime is not a separate runtime DSO.
You don't need PineForge installed on the target machine to run a prebuilt strategy .so — you only need it to build new strategies.
See Lifecycle for what to do with the handle once you have it.
If PineForge_VERSION doesn't match what you installed, your CMAKE_PREFIX_PATH or PineForge_DIR is pointing at a different copy.