The default Slate attribute syntax (such .OnClicked) expects a shared pointer. You need to either:
- Use OnClicked_Raw instead; or
- Derive your class from TSharedFromThis, which allows implicit conversion to a shared pointer, e.g.
class FModularBuildModule : public IModuleInterface, public TSharedFromThis< FModularBuildModule >