Skip to content

Go wrapper around C bindings for ErgoLib from sigma-rust

License

Notifications You must be signed in to change notification settings

sigmaspace-io/ergo-lib-go

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

75 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ergo-lib-go

Go wrapper around C bindings for ErgoLib from sigma-rust

Install

go get -u github.com/sigmaspace-io/ergo-lib-go

Supported Platforms

This library makes heavy use of cgo. A set of precompiled shared library objects are provided. For the time being the following platforms are supported and tested against:

Platform Architecture Triple Supported Tested
Linux amd64 x86_64-unknown-linux-gnu
aarch64 aarch64-unknown-linux-gnu
Darwin amd64 x86_64-apple-darwin
aarch64 aarch64-apple-darwin
Windows amd64 x86_64-pc-windows-gnu

Supported sigma-rust versions

sigma-rust Version ergo-lib-go Version
v0.26.0 v0.26.0
v0.28.0 v0.28.0

Library

The libraries under lib were compiled from sigma-rust with the following commands:

cargo build -p ergo-lib-c --release --target x86_64-apple-darwin
cargo build -p ergo-lib-c --release --target aarch64-apple-darwin
cross build -p ergo-lib-c --release --target x86_64-unknown-linux-gnu
cross build -p ergo-lib-c --release --target aarch64-unknown-linux-gnu
cross build -p ergo-lib-c --release --target x86_64-pc-windows-gnu
rustup run nightly-2024-01-26 cbindgen --config cbindgen.toml --crate ergo-lib-c --output h/ergo_lib.h

Credits