Skip to content

Latest commit

 

History

History
43 lines (30 loc) · 958 Bytes

README.md

File metadata and controls

43 lines (30 loc) · 958 Bytes

SputnikVM FFI Bindings

This repo contains C and Go bindings for the SputnikVM core library.

Usage

C

In c folder, run make build. It will generate an object file libsputnikvm.so, and you can use the header file sputnikvm.h to interact with it. You can find the generated documentation file for sputnikvm.h here.

Go

Import the sputnikvm library to your application:

import "github.com/eth-classic/sputnikvm-ffi/go/sputnikvm"

Build a static library for the C FFI, which will give you an libsputnikvm.a file:

cd c
make build

When building your Go application, pass CGO_LDFLAGS to link the C library.

CGO_LDFLAGS="/path/to/libsputnikvm.a -ldl" go build .

Refer to GoDoc for documentation of the Go bindings.