| Crates.io | gmsh-sys |
| lib.rs | gmsh-sys |
| version | 0.1.2 |
| created_at | 2019-09-19 16:10:36.843227+00 |
| updated_at | 2019-11-19 19:33:08.451394+00 |
| description | Low-level bindings to the Gmsh API |
| homepage | https://github.com/mxxo/gmsh-sys |
| repository | |
| max_upload_size | |
| id | 165991 |
| size | 157,205 |
Unofficial bindings to the Gmsh C API (currently v4.4.1).
The bindings are directly generated using bindgen.
They're very low-level and you'll likely want them wrapped in a higher-level crate.
You'll need a copy of the Gmsh SDK library (libgmsh) to link with.
If you're getting linker errors when trying to run cargo test, try passing
the Gmsh library location to LD_LIBRARY_PATH during the call:
LD_LIBRARY_PATH="<libgmsh-path>" cargo test
For posterity, the exact bindgen call (v0.50.0) was
let bindings = bindgen::Builder::default()
.header("gmsh/api/gmshc.h")
.generate_comments(true)
.generate()
.expect("Unable to generate bindings");
let out_path = PathBuf::from(env::var("OUT_DIR").unwrap());
bindings
.write_to_file(out_path.join("bindings.rs"))
.expect("Couldn't write bindings!");
Gmsh is copyright (C) 1997-2019 by C. Geuzaine and J.-F. Remacle.
From the Gmsh website:
Gmsh is a free 3D finite element mesh generator with a built-in CAD engine and post-processor.
Links: