Splitting implementation and interface in C++
Splitting implementation and interface in C++
Posted Feb 26, 2025 21:14 UTC (Wed) by Cyberax (✭ supporter ✭, #52523)In reply to: Splitting implementation and interface in C++ by ras
Parent article: Rewriting essential Linux packages in Rust
There are several issues. Rust is very happy to use slightly different versions of libraries, if your dependencies are locked at a different time.
This is fine for static linking, but you don't generally want to end up with 15 versions of the same shared library with a slightly different patch version. So you ideally should be able to control the versions so that distro-provided libraries are used as much as possible, overriding Cargo's resolution mechanism. Ideally, making sure that you get CVE fixes.
Doing it properly is not trivial.
