rust-cpp
rust-bindgen
Our great sponsors
rust-cpp | rust-bindgen | |
---|---|---|
11 | 50 | |
771 | 4,070 | |
- | 2.6% | |
4.6 | 8.9 | |
8 months ago | 6 days ago | |
Rust | Rust | |
Apache License 2.0 | BSD 3-clause "New" or "Revised" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
rust-cpp
-
Improving Interoperability Between Rust and C++
I am the current passive maintainer of the cpp crate: https://github.com/mystor/rust-cpp
-
Best practices in creating a Rust API for a C++ library? Seeking advice from those who've done it before.
I would like to utilize OMPL's functionality in Rust code, so I want to call into OMPL C++ code somehow in Rust. I've seen two (non-mutually-exclusive) options so far: - rust-cpp, which allows you to write C++ code in Rust within the cpp!() macro. - cxx, which allows you to define both sides of the FFI boundary manually (as opposed to bindgen's automatic generation).
-
Microsoft is rewriting core Windows libraries in Rust
There's also the cpp and cxx crates for doing C++/Rust interop, but they probably aren't appropriate to use in all cases. The C ABI is definitely the safest way to go unless you're really trying to marry Rust and C++ code bases, not just writing library bindings.
-
Zork++ reaches the v0.5.0, ...where the project has been [completely] rewritten in Rust
https://github.com/mystor/rust-cpp <- not a transpiler, but almost as good
-
US NGO Consumer Reports also reporting on C and C++ safety for product development.
Otherwise, C would never have achieved success in MS-DOS when all the stuff it was binding to at the time required blocks of inline assembly. (Crates like rust-cpp do exist, which allow "inline C++" in the same way that C++ allows inline assembly.)
-
Choosing language for a new project
Actually, you can make inline C++ macro in Rust. Similar unholy monstrosities exist for inline python, inline C, inline SQL, inline HTML,...
-
Tired of safe programming? Embed C directly in your Rust code
Here is a more serious project that allows to embed C++ code directly in your Rust code: https://github.com/mystor/rust-cpp
-
Hello, youki! Faster container runtime is written in Rust
Don't underestimate the power of procedural macros: https://github.com/mystor/rust-cpp
- Use a CPP library from Rust
-
Rust with C++?
Alright, thanks for all your ideas! I also found this mystor/rust-cpp, which apparently allows inline c++ as opposed to cxx. Having yet to try out any of these, I like the idea of inline code more. Thought now I feel I need to brush up my skills a bit more to try this stuff out.
rust-bindgen
- Rust Bindgen
-
ffizz: Build a Beautiful C API in Rust
Rust supports two kinds of FFI: calling into Rust from another language; and calling into another language from Rust. Most of the thought and tooling that exists right now is organized around the second kind. For example, bindgen is a popular tool that generates useful Rust wrappers from a C or C++ header file.
-
Best practices in creating a Rust API for a C++ library? Seeking advice from those who've done it before.
I have looked into bindgen, but found that it would not be feasible due to OMPL not having a C API, just C++.
-
the graphics driver doesn't work on gentoo.
Yes! Are you running LLVM version 16.0.0 or newer, by any chance? I believe this is an issue with some builds of bindgen with newer versions of LLVM. See https://github.com/rust-lang/rust-bindgen/issues/2488
-
Any sort of plugin engine with dynamic load ability and any limitations?
On native, you have to define a C API, probably using a header file. Even if both sides are implemented in Rust, they have to speak that C API (documentation).
-
How can I use rust libraries in C++
Bindgen has some functionality for direct talk to C++ https://github.com/rust-lang/rust-bindgen
-
Issue resolving dependencies when linking C libraries
I am trying to use rust-bindgen (https://github.com/rust-lang/rust-bindgen) to link a static C library (say `libexample.a`) which is compiled in a separate project with CMake. The `libexample.a` depends on other libraries (for example `libcurl.a`) installed on the system.
-
I implemented a NASA image compression algorithm
It looks like the guy you're replying too was kind of an ass, but I do want to point out for anyone else reading that that's not actually that much of a technical limitation: rust code can natively call C code. The main thing you need is a translation of the C library's header file so rustc knows what C functions and structs exist, and that can be automatically generated with bindgen.
-
Hey Rustaceans! Got a question? Ask here (5/2023)!
It's quite the different approach, but you could consider using bindgen instead.
-
Control hardware using c# or c++ API (dll)
Use bindgen or CXX to create Rust bindings for the C or C++ libraries.
What are some alternatives?
cxx - Safe interop between Rust and C++
Introducing .NET Multi-platform App UI (MAUI) - .NET MAUI is the .NET Multi-platform App UI, a framework for building native device applications spanning mobile, tablet, and desktop.
derive_more - Some more derive(Trait) options
rust-ctor - Module initialization/global constructor functions for Rust
autocxx - Tool for safe ergonomic Rust/C++ interop driven from existing C++ headers
JavaCPP - The missing bridge between Java and native C++
JNA - Java Native Access
rust-derive-builder - derive builder implementation for rust structs
vulkano - Safe and rich Rust wrapper around the Vulkan API
bitflags - A macro to generate structures which behave like bitflags
CC - A small, usability-oriented generic container library.