3 unstable releases

0.6.0-rc.1 May 18, 2024
0.6.0-rc.0 May 12, 2024
0.1.0 Mar 4, 2023

#879 in Game dev


Used in quickjspp

MIT license

3MB
85K SLoC

C 76K SLoC // 0.0% comments JavaScript 5.5K SLoC // 0.0% comments Rust 3K SLoC // 0.0% comments Bitbake 424 SLoC // 0.1% comments Shell 22 SLoC // 0.1% comments

libquickjs-sys

FFI Bindings for quickjspp, a fork of quickjs, which is a Javascript engine.

See the quickjspp crate for a high-level wrapper.

Version 0.9.0 Embedded VERSION: 2021-03-27

Embedded vs system

By default, an embedded version of quickjs is used.

If you want to use a version installed on your system, use:

libquickjs-sys = { version = "...", default-features = false, features = ["system"] }

Updating the embedded bindings

QuickJS sources and a pre-generated bindings.rs are included in the repo.

They are used if the embedded feature is enabled.

To updat the bindings, follow these steps:

  • (Install just)
  • (Install bindgen-cli)
  • Update the download URL in ./justfile
  • run just update-quickjs

Tips:

You may encounter problems in generating bindings.rs like "FP_SUBNORMAL redefined here". That's the solution, but due that we execute bindgen in cli, we have to resolve them by hand.

No runtime deps