That is pretty much the pitch for Futhark. Basically it automatically generates the wrapper for you (and by wrapper it's just all the function and type declarations, there's no runtime overhead). However these automatic wrappers will be very C-like, so if you want an easier Nim experience then you would probably want to write a more Nim-like interface to the C library which maps it to the automatic memory management, converts types, and prettifies names.
Futhark can't currently do C++, but it handles even complex C libraries like Gtk. Just import it and start writing code (in Nim, but very C-like as mentioned above).