The difficulty in importing C++ libraries from other languages don&#x27;t really represent a Rust issue, but rather a C++ issue, of course.<p>As to the very interesting question of how it&#x27;s handled here, it looks like part of the project (the &quot;qtdrv&quot; folder) is a shared library written in C++ that includes Qt, wraps the desired functionality, and exports it as C-style symbols (with extern &quot;C&quot;). This is a pretty standard way of circumventing the name mangling problem.<p>What I find interesting is that everything appears to be wrapped into a single exported function &quot;qtdrv&quot;. Might be a wrapping technique that I&#x27;m not aware of, or maybe I&#x27;m completely misreading the source. I&#x27;m actually quite interested in knowing how the wrapping code was generated, having projects where the same kind of C++ wrapping is required.