ue-module-and-build-system
Installation
SKILL.md
Modules & the build system
Every Unreal C++ feature lives in a module: a directory that compiles into its own DLL
(modular builds) or static lib (monolithic builds). UnrealBuildTool (UBT) reads C#-style
*.Build.cs files (one per module) and *.Target.cs files (one per build target) to decide
what to compile and link. Most "won't compile / won't link" problems are really "wrong module
dependency" problems.
Note: UE modules are independent of C++20 language modules.
When to use this skill
- Adding a new module to a project or plugin, or splitting a growing module into smaller units.
- Link/include errors: unresolved external (
*_APIsymbol), "cannot open include file", "module X not found at startup". - Adding a dependency (e.g. you used
UEnhancedInputComponentand needEnhancedInput). - Choosing
PublicDependencyModuleNamesvsPrivateDependencyModuleNames, or the loading phase and host type. - Understanding how UBT discovers modules and when to regenerate project files.