UWidgetBlueprintLibrary Gives Linker Errors - Functions Are Missing In Pre-Compiled Engine!

There appears to be some Documentation errors on the UWidgetBlueprintLibrary.

GetAllWidgetsofClass doesn’t appear to be accessible to any other class. I’ve included the “UMG”, “Slate” and “SlateCore” Modules into my projects build.cs file, but still get the following issue. This has been reported numerous times with no official feedback yet.

Another post here: UWidgetBlueprintLibrary linking error - UI - Unreal Engine Forums

Here’s my code:

#include "GESGame.h"
#include "GESGame_MenuController.h"
#include "WidgetBlueprintLibrary.h"

void AGESGame_MenuController::ClearHUDWidgets()
{
	TArray<UUserWidget*> FoundWidgetArray;
	UWidgetBlueprintLibrary::GetAllWidgetsOfClass(this, FoundWidgetArray, UUserWidget::StaticClass(), false);

	for (UUserWidget* Wdgt : FoundWidgetArray)
	{
		Wdgt->RemoveFromParent();
	}

	GEngine->AddOnScreenDebugMessage(-1, 10.0f, FColor::Red, FString::Printf(TEXT("Clear Widgets")));
}

This class is a Sub-Class of APlayerController.

At compile time, the headers all build just fine but when compiling the .cpp module I get a linker error. The function exists in the code that comes with the pre-compiled version of the engine, but I sense that the pre-compiled version is not actually accurate to the code that comes with it.

Those blueprint libraries were not exported from the DLL, so you can’t link against them. I’m changing them for 4.8 to be exported.

Thanks Nick!