Skip to content

ETCDEVTeam/sputnikvm-ffi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

91 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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/ETCDEVTeam/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.