4 releases (stable)
1.0.4 | Dec 17, 2023 |
---|---|
1.0.3 | Jul 27, 2022 |
1.0.0 | Jul 10, 2022 |
0.0.1 | Jan 18, 2021 |
#3 in #naif
509 downloads per month
Used in 6 crates
(2 directly)
140KB
174 lines
cspice-sys
Unsafe bindings to the NAIF SPICE Toolkit.
Read the official CSPICE documentation online
Please note this is a complete replacement of the 0.x version of the crate, under a new maintainer
Installation
Firstly, you must have Clang installed and on your PATH
to be able to generate
the bindings.
If you're on a Unix-like system and have CSPICE installed in the standard paths (libcspice.a
in /usr/lib
and headers in /usr/include
),
that version will be used by default.
Alternatively, you can enable the downloadcspice
feature on the crate to automatically download CSPICE from NAIF servers
when this crate is built. Be aware that this will increase build time and require an internet connection on every clean build.
You can also download CSPICE and tell this crate about where to find it manually: First install the CSPICE toolkit by downloading and extracting the appropriate archive from here.
Then, set the CSPICE_DIR
environment variable to point to the extracted cspice
directory (which should contain
the include
and lib
directories).
WARNING: On Unix like systems you will likely need to rename lib/cspice.a
to lib/libcspice.a
so that it can be
successfully linked.
Also see the GitHub workflow for examples on how to set this up.
Cross Compilation
You can use the CSPICE_CLANG_TARGET
environment variable to override the --target
parameter for Clang (when
generating bindings).
You can use the CSPICE_CLANG_ROOT
environment variable to override the --sysroot
parameter for Clang (when
generating bindings).
No runtime deps
~0–3MB
~48K SLoC