Hello everyone, hope you are all having a great time.

I created a config file using protobuf and generated the corresponding header and implementation file. I added them both to my library and it builds just fine. no problem.
However, any project that wants to use this library, since it includes the protobuf generated header for my Config class, requires to also include the Config.pb.cc file which is the implementation file.
I don't want to distribute this file and want everything to be self-contained in my library. How should I do that?
I tried concatenating the .cc file into the header file and build the library this way, however I get redefinition errors :
Severity Code Description Project File Line Suppression State
Error C2011 'FVConfig::Config_FAN_MODELS_WEIGHTSDefaultTypeInt ernal': 'class' type redefinition FV D:\Tervor\Dependencies\include\messages\Config.pb. h 4363
Error C2011 'FVConfig::Config_S3FD_MODELS_WEIGHTSDefaultTypeIn ternal': 'class' type redefinition FV D:\Tervor\Dependencies\include\messages\Config.pb. h 4367
Error C2011 'FVConfig::Config_DLIB_MODELS_WEIGHTSDefaultTypeIn ternal': 'class' type redefinition FV D:\Tervor\Dependencies\include\messages\Config.pb. h 4371
Error C2011 'FVConfig::Config_MTCNN_MODELS_WEIGHTSDefaultTypeI nternal': 'class' type redefinition FV D:\Tervor\Dependencies\include\messages\Config.pb. h 4375
...

And as a ref here is the full config.pb.h :Paste.ee - config.h and config.cc merged

how should I be going about this?