I followed this tutorial : Adding custom third-party library to plugin from scratch and succeeded in creating a third party library plugin from scratch. This tutorial is basically an explainer for how the Third Party Library plugin template works behind the scenes. However, when I try to replicate the tutorial’s goal with the Third Party Library template itself, it gives a bunch of missing file errors and linker errors. Particularly, I noticed that the build.cs file of the blank template has CoreUObject, Engine, Slate, and SlateCore in the private dependencies, and it compiles just fine with those. However, adding those dependencies in the Third Party Library plugin template results in a bunch of linker errors. I matched the files one to one, but I couldn’t find out why this happens. Is this a bug, or am I missing some linking commands somewhere that gets issued with the blank template but not the third party one?
I think I might have figured it out, though I would love to hear more in-depth info if anyone knows.
After including the modules in the build.cs file of the third party template plugin, I run a whole Rebuild of the Solution. This presumably regenerates all the code, and all the inclusions go to their intended locations. A side effect is that Live Code Compiling (Ctrl+Alt+F11) after this crashes the project, then it requests another build of the modules when opening it again. That however, completes the build successfully, and I am able to use the Engine module in the third party library plugin template.
tl;dr - Run Build->Rebuild Solution after adding the modules worked for me.