jq-sys
Generated bindings for jq 1.6.
The bindings were generated with bindgen, which is available via
cargo install.
Example:
$ git submodule update --init
$ bindgen modules/jq/src/jq.h -o src/bindings.rs
Building
Using the bundled feature
When the bundled feature is enabled it will add a dependency on jq-src, which
will attempt to build and link to the library. This may cover simple cases, but for
anything exotic (such as cross-building), you will want to install or build libjq
yourself.
Note: when using the
bundledfeature libjq is provided by the jq-src crate, which requiresgcc,autoreconf,make, etc in yourPATHto build.
Without the bundled feature
When not using the bundled feature, you'd either have to compile libjq yourself, or use libs furnished by your
system package manager.
For example on debian systems, you might install libjq1 libjq-dev libonig4 libonig-dev.
The following env vars can be used to provide hints to the build script.
| Name | Purpose | Notes |
|---|---|---|
JQ_LIB_DIR |
Path to the location of the library. | |
JQ_LIB_STATIC |
Use static linking instead of shared. | |
JQ_NO_ONIG |
Disable linking to oniguruma for regex support. |
|
ONIG_LIB_DIR |
Path to the location of the library. | Defaults to JQ_LIB_DIR, ignored if JQ_NO_ONIG is set. |
ONIG_LIB_STATIC |
Use static linking instead of shared. | Ignored if JQ_NO_ONIG is set. |
Note that if you are using the
pkg-configfeature and it is unable to locatelibjq, can specify the location explicitly by settingJQ_LIB_DIR.This may be required on debian based distros (including ubuntu) since, at the time of writing, the distro packages for
jqdo not include the.pcfiles required forpkg-configto locate the files.
Changelog
0.2.2 (2019-06-09)
- Update optional dep on jq-src to mitigate build failures when
using the
bundledfeature.
0.2.1 (2019-06-01)
- re-generated
src/bindings.rswithbindgenv0.49.2. - Updated dependency on jq-src to v0.3.
- Updated
build.rsto avoid rebuilding jq from source more often than needed when usingbundledfeature (#2).
0.2.0 (2019-02-18)
Additions:
- New env vars added to allow linkage to
libjqandlibonigto be customized. - Adds
pkg-configfeature (on by default) to help configure linkage, as a fallback when env vars are not set.
Breaking changes:
bundledfeature is no longer enabled by default.
0.1.1 (2019-01-13)
Added bundled feature (on by default) to allow dependents to opt in or out
from using the jq-src crate for linkage.
0.1.0 (2019-01-13)
Initial release.