# Slate Link Errors

**URL:** <https://forums.unrealengine.com/t/slate-link-errors/278104>\
**Category:** UI\
**Tags:** unreal-engine, slate, question\
**Created:** [March 23, 2014, 7:39pm UTC](https://forums.unrealengine.com/t/slate-link-errors/278104 "2014-03-23T19:39:17Z")\
**Posts on this page:** 13\
**Page:** 1

<div class="post-metadata">

**Author:** ![anonymous\_user\_0dc1700e](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_0dc1700e](https://forums.unrealengine.com/u/anonymous_user_0dc1700e)\
**Post date:** [March 23, 2014, 7:39pm UTC](https://forums.unrealengine.com/t/slate-link-errors/278104/1 "2014-03-23T19:39:17Z")

</div>

That is 76 unresolved external symbols, Do I really need to define 76 virtual functions to create a simple little widget?

```
//File: MyUIWidget.h

#pragma once
#include "MyHUD.h"
#include "Slate.h"

class SMyUIWidget : public SCompoundWidget
{
	SLATE_BEGIN_ARGS(SMyUIWidget)
	{}

	SLATE_ARGUMENT(TWeakObjectPtr<AMyHUD>, OwnerHUD)

	SLATE_END_ARGS()

public:
	//needed for every widget
	void Construct(const FArguments& InArgs);
private:
	//Pointer to our parent HUD
	TWeakObjectPtr<class AMyHUD> OwnerHUD;
};

//File: MyUIWidget.cpp

#include "MyProject.h"
#include "MyUIWidget.h"

void SMyUIWidget::Construct(const FArguments& InArgs)
{
	OwnerHUD = InArgs._OwnerHUD;

	ChildSlot
		.VAlign(VAlign_Fill)
		.HAlign(HAlign_Fill)
		[
			SNew(SOverlay)
			+ SOverlay::Slot()
			.VAlign(VAlign_Top)
			.HAlign(HAlign_Center)
			[
				SNew(STextBlock)
				.ShadowColorAndOpacity(FLinearColor::Black)
				.ColorAndOpacity(FLinearColor::White)
				.ShadowOffset(FIntPoint(-1, 1))
				.Font( FSlateFontInfo("Veranda", 8) )
				.Text(FString("BLAM"))
			]
		];
}

1>MyUIWidget.cpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public:__cdecl FSlateFontInfo::FSlateFontInfo(void)" (__imp_??0FSlateFontInfo@@QEAA@XZ) referenced in function "public:__cdecl TAttribute<struct FSlateFontInfo>::TAttribute<struct FSlateFontInfo>(void)" (??0?$TAttribute@UFSlateFontInfo@@@@QEAA@XZ)
1>MyUIWidget.cpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static struct FTextBlockStyle const &__cdecl FTextBlockStyle::GetDefault(void)" (__imp_?GetDefault@FTextBlockStyle@@SAAEBU1@XZ) referenced in function "public: struct FTextBlockStyle const &__cdecl ISlateStyle::GetWidgetStyle<struct FTextBlockStyle>(class FName,char const *)const " (??$GetWidgetStyle@UFTextBlockStyle@@@ISlateStyle@@QEBAAEBUFTextBlockStyle@@VFName@@PEBD@Z)
1>MyUIWidget.cpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static class ISlateStyle const &__cdecl FCoreStyle::Get(void)" (__imp_?Get@FCoreStyle@@SAAEBVISlateStyle@@XZ) referenced in function "public:__cdecl STextBlock::FArguments::FArguments(void)" (??0FArguments@STextBlock@@QEAA@XZ)
1>MyUIWidget.cpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static class FName__cdecl ISlateStyle::Join(class FName,char const *)" (__imp_?Join@ISlateStyle@@SA?AVFName@@V2@PEBD@Z) referenced in function "public: struct FTextBlockStyle const &__cdecl ISlateStyle::GetWidgetStyle<struct FTextBlockStyle>(class FName,char const *)const " (??$GetWidgetStyle@UFTextBlockStyle@@@ISlateStyle@@QEBAAEBUFTextBlockStyle@@VFName@@PEBD@Z)
1>MyUIWidget.cpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: class FSimpleSlot &__cdecl TSupportsOneChildMixin<class SWidget,class FSimpleSlot>::operator[](class TSharedRef<class SWidget,0>)" (__imp_??A?$TSupportsOneChildMixin@VSWidget@@VFSimpleSlot@@@@QEAAAEAVFSimpleSlot@@anonymous_user_e71e0d8a?$TSharedRef@VSWidget@@$0A@@@@Z) referenced in function "public: void__cdecl SMyUIWidget::Construct(struct SMyUIWidget::FArguments const &)" (?Construct@SMyUIWidget@@QEAAXAEBUFArguments@1@@Z)
1>MyUIWidget.cpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) private: static void *__cdecl FSlateControlledConstruction::operator new(unsigned __int64)" (__imp_??2FSlateControlledConstruction@@CAPEAX_K@Z) referenced in function "public: __cdecl TDecl<class SOverlay,struct RequiredArgs::T0RequiredArgs>::TDecl<class SOverlay,struct RequiredArgs::T0RequiredArgs>(char const *,char const *,int,struct RequiredArgs::T0RequiredArgs const &)" (??0?$TDecl@VSOverlay@@UT0RequiredArgs@RequiredArgs@@@@QEAA@PEBD0HAEBUT0RequiredArgs@RequiredArgs@@@Z)
1>MyUIWidget.cpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static void__cdecl FSlateControlledConstruction::operator delete(void *)" (__imp_??3FSlateControlledConstruction@@SAXPEAX@Z) referenced in function "int `public:__cdecl TDecl<class SOverlay,struct RequiredArgs::T0RequiredArgs>::TDecl<class SOverlay,struct RequiredArgs::T0RequiredArgs>(char const *,char const *,int,struct RequiredArgs::T0RequiredArgs const &)'::`1'::dtor$0" (?dtor$0@?0???0?$TDecl@VSOverlay@@UT0RequiredArgs@RequiredArgs@@@@QEAA@PEBD0HAEBUT0RequiredArgs@RequiredArgs@@@Z@4HA)
1>MyUIWidget.cpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: void__cdecl SWidget::Construct(class TAttribute<class FString> const &,class TSharedPtr<class SToolTip,0> const &,class TAttribute<struct TOptional<enum EMouseCursor::Type> > const &,class TAttribute<bool> const &,class TAttribute<struct EVisibility> const &,class FName const &)" (__imp_?Construct@SWidget@@QEAAXAEBV?$TAttribute@VFString@@@@AEBV?$TSharedPtr@VSToolTip@@$0A@@@AEBV?$TAttribute@U?$TOptional@W4Type@EMouseCursor@@@@@@AEBV?$TAttribute@_N@@AEBV?$TAttribute@UEVisibility@@@@AEBVFName@@@Z) referenced in function "public: class TSharedRef<class SOverlay,0>__cdecl TDecl<class SOverlay,struct RequiredArgs::T0RequiredArgs>::operator<<=(struct SOverlay::FArguments const &)const " (??_3?$TDecl@VSOverlay@@UT0RequiredArgs@RequiredArgs@@@@QEBA?AV?$TSharedRef@VSOverlay@@$0A@@@AEBUFArguments@SOverlay@@@Z)
1>MyUIWidget.cpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: void__cdecl SWidget::SetDebugInfo(char const *,char const *,int)" (__imp_?SetDebugInfo@SWidget@@QEAAXPEBD0H@Z) referenced in function "public:__cdecl TDecl<class SOverlay,struct RequiredArgs::T0RequiredArgs>::TDecl<class SOverlay,struct RequiredArgs::T0RequiredArgs>(char const *,char const *,int,struct RequiredArgs::T0RequiredArgs const &)" (??0?$TDecl@VSOverlay@@UT0RequiredArgs@RequiredArgs@@@@QEAA@PEBD0HAEBUT0RequiredArgs@RequiredArgs@@@Z)
1>MyUIWidget.cpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: class SOverlay::FOverlaySlot &__cdecl TSupportsOneChildMixin<class SWidget,class SOverlay::FOverlaySlot>::operator[](class TSharedRef<class SWidget,0>)" (__imp_??A?$TSupportsOneChildMixin@VSWidget@@VFOverlaySlot@SOverlay@@@@QEAAAEAVFOverlaySlot@SOverlay@@anonymous_user_e71e0d8a?$TSharedRef@VSWidget@@$0A@@@@Z) referenced in function "public: void__cdecl SMyUIWidget::Construct(struct SMyUIWidget::FArguments const &)" (?Construct@SMyUIWidget@@QEAAXAEBUFArguments@1@@Z)
1>MyUIWidget.cpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: class SOverlay::FOverlaySlot &__cdecl SOverlay::FOverlaySlot::HAlign(enum EHorizontalAlignment)" (__imp_?HAlign@FOverlaySlot@SOverlay@@QEAAAEAV12@W4EHorizontalAlignment@@@Z) referenced in function "public: void__cdecl SMyUIWidget::Construct(struct SMyUIWidget::FArguments const &)" (?Construct@SMyUIWidget@@QEAAXAEBUFArguments@1@@Z)
1>MyUIWidget.cpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: class SOverlay::FOverlaySlot &__cdecl SOverlay::FOverlaySlot::VAlign(enum EVerticalAlignment)" (__imp_?VAlign@FOverlaySlot@SOverlay@@QEAAAEAV12@W4EVerticalAlignment@@@Z) referenced in function "public: void__cdecl SMyUIWidget::Construct(struct SMyUIWidget::FArguments const &)" (?Construct@SMyUIWidget@@QEAAXAEBUFArguments@1@@Z)
1>MyUIWidget.cpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: virtual__cdecl SOverlay::~SOverlay(void)" (__imp_??1SOverlay@@UEAA@XZ) referenced in function "public: virtual void *__cdecl SOverlay::`scalar deleting destructor'(unsigned int)" (??_GSOverlay@@UEAAPEAXI@Z)
1>MyUIWidget.cpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: void__cdecl SOverlay::Construct(struct SOverlay::FArguments const &)" (__imp_?Construct@SOverlay@@QEAAXAEBUFArguments@1@@Z) referenced in function "public: void__cdecl RequiredArgs::T0RequiredArgs::CallConstruct<class SOverlay,struct SOverlay::FArguments>(class TSharedRef<class SOverlay,0> const &,struct SOverlay::FArguments const &)const " (??$CallConstruct@VSOverlay@@UFArguments@1@@T0RequiredArgs@RequiredArgs@@QEBAXAEBV?$TSharedRef@VSOverlay@@$0A@@@AEBUFArguments@SOverlay@@@Z)
1>MyUIWidget.cpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static class SOverlay::FOverlaySlot &__cdecl SOverlay::Slot(void)" (__imp_?Slot@SOverlay@@SAAEAVFOverlaySlot@1@XZ) referenced in function "public: void__cdecl SMyUIWidget::Construct(struct SMyUIWidget::FArguments const &)" (?Construct@SMyUIWidget@@QEAAXAEBUFArguments@1@@Z)
1>MyUIWidget.cpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public:__cdecl SOverlay::SOverlay(void)" (__imp_??0SOverlay@@QEAA@XZ) referenced in function "public:__cdecl TDecl<class SOverlay,struct RequiredArgs::T0RequiredArgs>::TDecl<class SOverlay,struct RequiredArgs::T0RequiredArgs>(char const *,char const *,int,struct RequiredArgs::T0RequiredArgs const &)" (??0?$TDecl@VSOverlay@@UT0RequiredArgs@RequiredArgs@@@@QEAA@PEBD0HAEBUT0RequiredArgs@RequiredArgs@@@Z)
1>MyUIWidget.cpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: void__cdecl STextBlock::Construct(struct STextBlock::FArguments const &)" (__imp_?Construct@STextBlock@@QEAAXAEBUFArguments@1@@Z) referenced in function "public: void__cdecl RequiredArgs::T0RequiredArgs::CallConstruct<class STextBlock,struct STextBlock::FArguments>(class TSharedRef<class STextBlock,0> const &,struct STextBlock::FArguments const &)const " (??$CallConstruct@VSTextBlock@@UFArguments@1@@T0RequiredArgs@RequiredArgs@@QEBAXAEBV?$TSharedRef@VSTextBlock@@$0A@@@AEBUFArguments@STextBlock@@@Z)
1>MyUIWidget.cpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public:__cdecl STextBlock::STextBlock(void)" (__imp_??0STextBlock@@QEAA@XZ) referenced in function "public:__cdecl TDecl<class STextBlock,struct RequiredArgs::T0RequiredArgs>::TDecl<class STextBlock,struct RequiredArgs::T0RequiredArgs>(char const *,char const *,int,struct RequiredArgs::T0RequiredArgs const &)" (??0?$TDecl@VSTextBlock@@UT0RequiredArgs@RequiredArgs@@@@QEAA@PEBD0HAEBUT0RequiredArgs@RequiredArgs@@@Z)
1>MyUIWidget.cpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: virtual__cdecl STextBlock::~STextBlock(void)" (__imp_??1STextBlock@@UEAA@XZ) referenced in function "public: virtual void *__cdecl STextBlock::`scalar deleting destructor'(unsigned int)" (??_GSTextBlock@@UEAAPEAXI@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl SLeafWidget::ArrangeChildren(class FGeometry const &,class FArrangedChildren &)const " (?ArrangeChildren@SLeafWidget@@UEBAXAEBVFGeometry@@AEAVFArrangedChildren@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl SOverlay::ArrangeChildren(class FGeometry const &,class FArrangedChildren &)const " (?ArrangeChildren@SOverlay@@UEBAXAEBVFGeometry@@AEAVFArrangedChildren@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl STextBlock::CacheDesiredSize(void)" (?CacheDesiredSize@STextBlock@@UEAAXXZ)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "protected: virtual void __cdecl SWidget::CacheDesiredSize(void)" (?CacheDesiredSize@SWidget@@MEAAXXZ)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual struct FVector2D __cdecl SOverlay::ComputeDesiredSize(void)const " (?ComputeDesiredSize@SOverlay@@UEBA?AUFVector2D@@XZ)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual struct FVector2D __cdecl STextBlock::ComputeDesiredSize(void)const " (?ComputeDesiredSize@STextBlock@@UEBA?AUFVector2D@@XZ)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FChildren * __cdecl SLeafWidget::GetChildren(void)" (?GetChildren@SLeafWidget@@UEAAPEAVFChildren@@XZ)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FChildren * __cdecl SOverlay::GetChildren(void)" (?GetChildren@SOverlay@@UEAAPEAVFChildren@@XZ)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual struct FSlateColor __cdecl SWidget::GetForegroundColor(void)const " (?GetForegroundColor@SWidget@@UEBA?AUFSlateColor@@XZ)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FString __cdecl SWidget::GetParsableFileAndLineNumber(void)const " (?GetParsableFileAndLineNumber@SWidget@@UEBA?AVFString@@XZ)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FString __cdecl SWidget::GetReadableLocation(void)const " (?GetReadableLocation@SWidget@@UEBA?AVFString@@XZ)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class TSharedPtr<class SToolTip,0> __cdecl SWidget::GetToolTip(void)" (?GetToolTip@SWidget@@UEAA?AV?$TSharedPtr@VSToolTip@@$0A@@@XZ)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual enum EWindowZone::Type __cdecl SWidget::GetWindowZoneOverride(void)const " (?GetWindowZoneOverride@SWidget@@UEBA?AW4Type@EWindowZone@@XZ)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual bool __cdecl SWidget::HasKeyboardFocus(void)const " (?HasKeyboardFocus@SWidget@@UEBA_NXZ)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual bool __cdecl SWidget::IsHovered(void)const " (?IsHovered@SWidget@@UEBA_NXZ)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FReply __cdecl SWidget::OnControllerAnalogValueChanged(class FGeometry const &,class FControllerEvent const &)" (?OnControllerAnalogValueChanged@SWidget@@UEAA?AVFReply@@AEBVFGeometry@@AEBVFControllerEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FReply __cdecl SWidget::OnControllerButtonPressed(class FGeometry const &,class FControllerEvent const &)" (?OnControllerButtonPressed@SWidget@@UEAA?AVFReply@@AEBVFGeometry@@AEBVFControllerEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FReply __cdecl SWidget::OnControllerButtonReleased(class FGeometry const &,class FControllerEvent const &)" (?OnControllerButtonReleased@SWidget@@UEAA?AVFReply@@AEBVFGeometry@@AEBVFControllerEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FCursorReply __cdecl SWidget::OnCursorQuery(class FGeometry const &,class FPointerEvent const &)const " (?OnCursorQuery@SWidget@@UEBA?AVFCursorReply@@AEBVFGeometry@@AEBVFPointerEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FReply __cdecl SWidget::OnDragDetected(class FGeometry const &,class FPointerEvent const &)" (?OnDragDetected@SWidget@@UEAA?AVFReply@@AEBVFGeometry@@AEBVFPointerEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl SWidget::OnDragEnter(class FGeometry const &,class FDragDropEvent const &)" (?OnDragEnter@SWidget@@UEAAXAEBVFGeometry@@AEBVFDragDropEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl SWidget::OnDragLeave(class FDragDropEvent const &)" (?OnDragLeave@SWidget@@UEAAXAEBVFDragDropEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FReply __cdecl SWidget::OnDragOver(class FGeometry const &,class FDragDropEvent const &)" (?OnDragOver@SWidget@@UEAA?AVFReply@@AEBVFGeometry@@AEBVFDragDropEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FReply __cdecl SWidget::OnDrop(class FGeometry const &,class FDragDropEvent const &)" (?OnDrop@SWidget@@UEAA?AVFReply@@AEBVFGeometry@@AEBVFDragDropEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual bool __cdecl SWidget::OnHitTest(class FGeometry const &,struct FVector2D)" (?OnHitTest@SWidget@@UEAA_NAEBVFGeometry@@UFVector2D@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FReply __cdecl SWidget::OnKeyChar(class FGeometry const &,class FCharacterEvent const &)" (?OnKeyChar@SWidget@@UEAA?AVFReply@@AEBVFGeometry@@AEBVFCharacterEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FReply __cdecl SWidget::OnKeyDown(class FGeometry const &,class FKeyboardEvent const &)" (?OnKeyDown@SWidget@@UEAA?AVFReply@@AEBVFGeometry@@AEBVFKeyboardEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FReply __cdecl SWidget::OnKeyUp(class FGeometry const &,class FKeyboardEvent const &)" (?OnKeyUp@SWidget@@UEAA?AVFReply@@AEBVFGeometry@@AEBVFKeyboardEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl SWidget::OnKeyboardFocusChanging(class FWeakWidgetPath const &,class FWidgetPath const &)" (?OnKeyboardFocusChanging@SWidget@@UEAAXAEBVFWeakWidgetPath@@AEBVFWidgetPath@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl SWidget::OnKeyboardFocusLost(class FKeyboardFocusEvent const &)" (?OnKeyboardFocusLost@SWidget@@UEAAXAEBVFKeyboardFocusEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FReply __cdecl SWidget::OnKeyboardFocusReceived(class FGeometry const &,class FKeyboardFocusEvent const &)" (?OnKeyboardFocusReceived@SWidget@@UEAA?AVFReply@@AEBVFGeometry@@AEBVFKeyboardFocusEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FReply __cdecl SWidget::OnMotionDetected(class FGeometry const &,class FMotionEvent const &)" (?OnMotionDetected@SWidget@@UEAA?AVFReply@@AEBVFGeometry@@AEBVFMotionEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FReply __cdecl STextBlock::OnMouseButtonDoubleClick(class FGeometry const &,class FPointerEvent const &)" (?OnMouseButtonDoubleClick@STextBlock@@UEAA?AVFReply@@AEBVFGeometry@@AEBVFPointerEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FReply __cdecl SWidget::OnMouseButtonDoubleClick(class FGeometry const &,class FPointerEvent const &)" (?OnMouseButtonDoubleClick@SWidget@@UEAA?AVFReply@@AEBVFGeometry@@AEBVFPointerEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FReply __cdecl SWidget::OnMouseButtonDown(class FGeometry const &,class FPointerEvent const &)" (?OnMouseButtonDown@SWidget@@UEAA?AVFReply@@AEBVFGeometry@@AEBVFPointerEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FReply __cdecl SWidget::OnMouseButtonUp(class FGeometry const &,class FPointerEvent const &)" (?OnMouseButtonUp@SWidget@@UEAA?AVFReply@@AEBVFGeometry@@AEBVFPointerEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl SWidget::OnMouseCaptureLost(void)" (?OnMouseCaptureLost@SWidget@@UEAAXXZ)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl SWidget::OnMouseEnter(class FGeometry const &,class FPointerEvent const &)" (?OnMouseEnter@SWidget@@UEAAXAEBVFGeometry@@AEBVFPointerEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl SWidget::OnMouseLeave(class FPointerEvent const &)" (?OnMouseLeave@SWidget@@UEAAXAEBVFPointerEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FReply __cdecl SWidget::OnMouseMove(class FGeometry const &,class FPointerEvent const &)" (?OnMouseMove@SWidget@@UEAA?AVFReply@@AEBVFGeometry@@AEBVFPointerEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FReply __cdecl SWidget::OnMouseWheel(class FGeometry const &,class FPointerEvent const &)" (?OnMouseWheel@SWidget@@UEAA?AVFReply@@AEBVFGeometry@@AEBVFPointerEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual int __cdecl SOverlay::OnPaint(class FGeometry const &,class FSlateRect const &,class FSlateWindowElementList &,int,class FWidgetStyle const &,bool)const " (?OnPaint@SOverlay@@UEBAHAEBVFGeometry@@AEBVFSlateRect@@AEAVFSlateWindowElementList@@HAEBVFWidgetStyle@@_N@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual int __cdecl STextBlock::OnPaint(class FGeometry const &,class FSlateRect const &,class FSlateWindowElementList &,int,class FWidgetStyle const &,bool)const " (?OnPaint@STextBlock@@UEBAHAEBVFGeometry@@AEBVFSlateRect@@AEAVFSlateWindowElementList@@HAEBVFWidgetStyle@@_N@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FReply __cdecl SWidget::OnPreviewKeyDown(class FGeometry const &,class FKeyboardEvent const &)" (?OnPreviewKeyDown@SWidget@@UEAA?AVFReply@@AEBVFGeometry@@AEBVFKeyboardEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FReply __cdecl SWidget::OnPreviewMouseButtonDown(class FGeometry const &,class FPointerEvent const &)" (?OnPreviewMouseButtonDown@SWidget@@UEAA?AVFReply@@AEBVFGeometry@@AEBVFPointerEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl SWidget::OnToolTipClosing(void)" (?OnToolTipClosing@SWidget@@UEAAXXZ)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FReply __cdecl SWidget::OnTouchEnded(class FGeometry const &,class FPointerEvent const &)" (?OnTouchEnded@SWidget@@UEAA?AVFReply@@AEBVFGeometry@@AEBVFPointerEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FReply __cdecl SWidget::OnTouchGesture(class FGeometry const &,class FPointerEvent const &)" (?OnTouchGesture@SWidget@@UEAA?AVFReply@@AEBVFGeometry@@AEBVFPointerEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FReply __cdecl SWidget::OnTouchMoved(class FGeometry const &,class FPointerEvent const &)" (?OnTouchMoved@SWidget@@UEAA?AVFReply@@AEBVFGeometry@@AEBVFPointerEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FReply __cdecl SWidget::OnTouchStarted(class FGeometry const &,class FPointerEvent const &)" (?OnTouchStarted@SWidget@@UEAA?AVFReply@@AEBVFGeometry@@AEBVFPointerEvent@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual bool __cdecl SWidget::OnVisualizeTooltip(class TSharedPtr<class SWidget,0> const &)" (?OnVisualizeTooltip@SWidget@@UEAA_NAEBV?$TSharedPtr@VSWidget@@$0A@@@@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual bool __cdecl SWidget::SupportsKeyboardFocus(void)const " (?SupportsKeyboardFocus@SWidget@@UEBA_NXZ)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl SWidget::Tick(class FGeometry const &,double,float)" (?Tick@SWidget@@UEAAXAEBVFGeometry@@anonymous_user_5■■■714e@Z)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FString __cdecl SWidget::ToString(void)const " (?ToString@SWidget@@UEBA?AVFString@@XZ)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: static struct EVisibility const EVisibility::Visible" (__imp_?Visible@EVisibility@@2U1@B)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: static struct EVisibility const EVisibility::SelfHitTestInvisible" (__imp_?SelfHitTestInvisible@EVisibility@@2U1@B)
1>MyUIWidget.cpp.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: static class FName const FTextBlockStyle::TypeName" (__imp_?TypeName@FTextBlockStyle@@2VFName@@B)
1>C:\Users\\Unreal Projects\MyProject\Binaries\Win64\UE4Editor-MyProject.dll : fatal error LNK1120: 76 unresolved externals

```

---

<div class="post-metadata">

**Author:** ![Jamie\_Dale](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/jamie_dale/32/1165413_2.png) [@Jamie\_Dale](https://forums.unrealengine.com/u/Jamie_Dale)\
**Post date:** [March 23, 2014, 7:58pm UTC](https://forums.unrealengine.com/t/slate-link-errors/278104/2 "2014-03-23T19:58:18Z")

</div>

Are you linking to Slate in your project dependencies?

> **[Link Error, Slate related](https://forums.unrealengine.com/questions/8230/link-error-slate-related.html)**
>
> I was wondering if someone could help with this link error. I was making a HUD class and a widget. I included “Slate.h” in my HUD header,which is the class I think most of these are coming from. I think it is all the Slate stuff. 1\>------ Build...

---

<div class="post-metadata">

**Author:** ![terry\_burns85](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@terry\_burns85](https://forums.unrealengine.com/u/terry_burns85)\
**Post date:** [March 23, 2014, 7:59pm UTC](https://forums.unrealengine.com/t/slate-link-errors/278104/3 "2014-03-23T19:59:47Z")

</div>

looks like you need to add Slate as a build dependency in your games build.cs file

Have a look in MyProject/Source/MyProject/MyProject.Build.cs and add slate here.

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_0dc1700e](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_0dc1700e](https://forums.unrealengine.com/u/anonymous_user_0dc1700e)\
**Post date:** [March 23, 2014, 8:00pm UTC](https://forums.unrealengine.com/t/slate-link-errors/278104/4 "2014-03-23T20:00:25Z")

</div>

Is this not a default setting?

---

<div class="post-metadata">

**Author:** ![Jamie\_Dale](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/jamie_dale/32/1165413_2.png) [@Jamie\_Dale](https://forums.unrealengine.com/u/Jamie_Dale)\
**Post date:** [March 23, 2014, 8:01pm UTC](https://forums.unrealengine.com/t/slate-link-errors/278104/5 "2014-03-23T20:01:44Z")

</div>

No, not all projects will use Slate so it’s optional. The correct code should be present, but commented out, in your .Build.cs file.

---

<div class="post-metadata">

**Author:** ![terry\_burns85](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@terry\_burns85](https://forums.unrealengine.com/u/terry_burns85)\
**Post date:** [March 23, 2014, 8:03pm UTC](https://forums.unrealengine.com/t/slate-link-errors/278104/6 "2014-03-23T20:03:28Z")

</div>

doesn’t appear to be.  
Seems like the only dependencies are

PublicDependencyModuleNames.AddRange(new string[] { “Core”, “CoreUObject”, “Engine”, “InputCore” });

if you have a dependency in private code, note the folder your source file resides, Then you’ll want to add:

PrivateDependencyModuleNames.Add(“Slate”);

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_0dc1700e](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_0dc1700e](https://forums.unrealengine.com/u/anonymous_user_0dc1700e)\
**Post date:** [March 23, 2014, 8:07pm UTC](https://forums.unrealengine.com/t/slate-link-errors/278104/7 "2014-03-23T20:07:48Z")

</div>

MyProject\Source\MyProject\MyProject.Build.cs

I see it there, got it.

There should really be a sticky on the forums.

---

<div class="post-metadata">

**Author:** ![terry\_burns85](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@terry\_burns85](https://forums.unrealengine.com/u/terry_burns85)\
**Post date:** [March 23, 2014, 8:08pm UTC](https://forums.unrealengine.com/t/slate-link-errors/278104/8 "2014-03-23T20:08:22Z")

</div>

Actually, I just created a sample code project and found this in the Build.cs

```
	// Uncomment if you are using Slate UI
	// PrivateDependencyModuleNames.Add("Slate");

```

Uncommenting should sort you out.

Terence

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_0dc1700e](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_0dc1700e](https://forums.unrealengine.com/u/anonymous_user_0dc1700e)\
**Post date:** [March 23, 2014, 8:13pm UTC](https://forums.unrealengine.com/t/slate-link-errors/278104/9 "2014-03-23T20:13:09Z")

</div>

Well, I just built “Hello, World!” with a text-box.

So, I hear I can’t see the UI from within the Editor Viewport, I’ll have to launch a game, correct?

---

<div class="post-metadata">

**Author:** ![Jamie\_Dale](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/jamie_dale/32/1165413_2.png) [@Jamie\_Dale](https://forums.unrealengine.com/u/Jamie_Dale)\
**Post date:** [March 23, 2014, 8:15pm UTC](https://forums.unrealengine.com/t/slate-link-errors/278104/10 "2014-03-23T20:15:19Z")

</div>

That’s correct.

---

<div class="post-metadata">

**Author:** ![szyszek](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@szyszek](https://forums.unrealengine.com/u/szyszek)\
**Post date:** [March 23, 2014, 8:41pm UTC](https://forums.unrealengine.com/t/slate-link-errors/278104/11 "2014-03-23T20:41:46Z")

</div>

You must use “Play in new window” option insted play in viewport to view Slate

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_0dc1700e](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_0dc1700e](https://forums.unrealengine.com/u/anonymous_user_0dc1700e)\
**Post date:** [March 24, 2014, 12:21am UTC](https://forums.unrealengine.com/t/slate-link-errors/278104/12 "2014-03-24T00:21:28Z")

</div>

And “Hello, Slate World!” has been built and is 100% working! I’ll be releasing a tutorial on the forums, I’ll be sure to mention you all and everyone else involved.

---

<div class="post-metadata">

**Author:** ![Nan0Tubes](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Nan0Tubes](https://forums.unrealengine.com/u/Nan0Tubes)\
**Post date:** [July 26, 2014, 2:50am UTC](https://forums.unrealengine.com/t/slate-link-errors/278104/13 "2014-07-26T02:50:08Z")

</div>

If your using Unreal engine 4.3 and the other answers doesn’t work for you,

Try using the following  
PrivateDependencyModuleNames.AddRange(new string[] { “Slate”, “SlateCore” });

instead of  
PrivateDependencyModuleNames.Add(“Slate”);
