Skip to content
/ cbqn-rs Public

Rust API for CBQN FFI

License

GPL-3.0 and 2 other licenses found

Licenses found

GPL-3.0
LICENSE-GPLv3
LGPL-3.0
LICENSE-LGPLv3
MPL-2.0
LICENSE-MPL2
Notifications You must be signed in to change notification settings

Detegr/cbqn-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

78 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

cbqn

A Rust crate for running BQN code within a Rust program using CBQN interpreter shared object or WASI reactor.

Building

Native backend (libcbqn.so)

With the native backend (default), please make sure the libcbqn shared object can be found by rustc. Build libcbqn.so with make shared-o3 in CBQN repository and set up .cargo/config.toml as following:

[build]
rustflags = "-L/path/to/CBQN"
rustdocflags = "-L/path/to/CBQN"

To make the executable aware of libcbqn.so, if no global install is available for you, you can use LD_LIBRARY_PATH to tell where to load libcbqn.so from:

LD_LIBRARY_PATH=/path/to/CBQN cargo test

WASI backend (BQN.wasm)

To build the WASI backend, point the BQN_WASM environment variable to the BQN.wasm file built with make wasi-reactor-o3 CBQN makefile target. Disable default features and use wasi-backend feature. For example running the tests for this crate:

BQN_WASM=/path/to/CBQN/BQN.wasm cargo test --no-default-features --features=wasi-backend --release

Usage

The documentation contains multiple examples on how to use the crate.

License

Licensed either under GPLv3, LGPLv3 or MPL 2.0 following the licensing of CBQN.

About

Rust API for CBQN FFI

Topics

Resources

License

GPL-3.0 and 2 other licenses found

Licenses found

GPL-3.0
LICENSE-GPLv3
LGPL-3.0
LICENSE-LGPLv3
MPL-2.0
LICENSE-MPL2

Stars

Watchers

Forks

Languages