I think some code is also generated in the .c++ file for RPC interfaces.
If you don't get a linker error when you omit the .c++ file, then you must not be using these features. It's fine to omit the file if you don't see any errors from doing so. Note, though, that you might find you suddenly need the .c++ file in the future after some code change, or a future version of Cap'n Proto might start to require it. I'd generally recommend making it part of your build, but configuring your linker to drop unused objects, rather than intentionally omit it.