Download

Plugins folder. At an absolute loss, please help...

I’m trying to create a plugin for blueprints/sqlite. Start a new blank c++ project, follow all the steps, create my plugin from the editor, and away we go coding. Except… everything seems to be broken in VS from the get-go, and it just will not compile when I’m finished. VS doesn’t give me any specific code error, but it does reference some error for unresolved externals:



Rebuild started...
1>------ Rebuild All started: Project: ProjPlug, Configuration: Development_Editor x64 ------
1>Cleaning ProjPlugEditor and UnrealHeaderTool binaries...
1>Creating makefile for ProjPlugEditor (no existing makefile)
1>Parsing headers for ProjPlugEditor
1> Running UnrealHeaderTool "D:\John\Documents\Unreal Projects\ProjPlug\ProjPlug.uproject" "D:\John\Documents\Unreal Projects\ProjPlug\Intermediate\Build\Win64\ProjPlugEditor\Development\ProjPlugEditor.uhtmanifest" -LogCmds="loginit warning, logexit warning, logdatabase error" -Unattended -WarningsAsErrors -abslog="C:\Users\scatt\AppData\Local\UnrealBuildTool\Log_UHT.txt" -installed
1>Reflection code generated for ProjPlugEditor in 2.4334939 seconds
1>Building ProjPlugEditor...
1>Using Visual Studio 2019 14.28.29910 toolchain (D:\John\Program Files\Visual Studio\2019\Community\VC\Tools\MSVC\14.28.29910) and Windows 10.0.18362.0 SDK (C:\Program Files (x86)\Windows Kits\10).
1>Building 16 actions with 24 processes...
1> [1/16] Default.rc2
1> [2/16] Default.rc2
1> [3/16] PCH.QDSQLdb.cpp
1> [4/16] Module.QDSQLdb.cpp
1> [5/16] Module.QDSQLdb.gen.cpp
1> [6/16] sqlite3.c
1> [7/16] UE4Editor-QDSQLdb.lib
1> Creating library D:\John\Documents\Unreal Projects\ProjPlug\Plugins\QDSQLdb\Intermediate\Build\Win64\UE4Editor\Development\QDSQLdb\UE4Editor-QDSQLdb.lib and object D:\John\Documents\Unreal Projects\ProjPlug\Plugins\QDSQLdb\Intermediate\Build\Win64\UE4Editor\Development\QDSQLdb\UE4Editor-QDSQLdb.exp
1> [8/16] UE4Editor-QDSQLdb.dll
1> Creating library D:\John\Documents\Unreal Projects\ProjPlug\Plugins\QDSQLdb\Intermediate\Build\Win64\UE4Editor\Development\QDSQLdb\UE4Editor-QDSQLdb.suppressed.lib and object D:\John\Documents\Unreal Projects\ProjPlug\Plugins\QDSQLdb\Intermediate\Build\Win64\UE4Editor\Development\QDSQLdb\UE4Editor-QDSQLdb.suppressed.exp
1>LINK : error LNK2001: unresolved external symbol IMPLEMENT_MODULE_QDSQLdb
1>D:\John\Documents\Unreal Projects\ProjPlug\Plugins\QDSQLdb\Binaries\Win64\UE4Editor-QDSQLdb.dll : fatal error LNK1120: 1 unresolved externals
1> [9/16] SharedPCH.Engine.ShadowErrors.cpp
1> [10/16] ProjPlug.cpp
1> [11/16] ProjPlug.init.gen.cpp
1> [12/16] ProjPlugGameModeBase.cpp
1> [13/16] ProjPlugGameModeBase.gen.cpp
1> [14/16] UE4Editor-ProjPlug.lib
1> Creating library D:\John\Documents\Unreal Projects\ProjPlug\Intermediate\Build\Win64\UE4Editor\Development\ProjPlug\UE4Editor-ProjPlug.lib and object D:\John\Documents\Unreal Projects\ProjPlug\Intermediate\Build\Win64\UE4Editor\Development\ProjPlug\UE4Editor-ProjPlug.exp
1> [15/16] UE4Editor-ProjPlug.dll
1> Creating library D:\John\Documents\Unreal Projects\ProjPlug\Intermediate\Build\Win64\UE4Editor\Development\ProjPlug\UE4Editor-ProjPlug.suppressed.lib and object D:\John\Documents\Unreal Projects\ProjPlug\Intermediate\Build\Win64\UE4Editor\Development\ProjPlug\UE4Editor-ProjPlug.suppressed.exp
1>D:\John\Program Files\Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.MakeFile.Targets(51,5): error MSB3073: The command "D:\John\Engines\UE_4.26\Engine\Build\BatchFiles\Rebuild.bat ProjPlugEditor Win64 Development -Project="D:\John\Documents\Unreal Projects\ProjPlug\ProjPlug.uproject" -WaitMutex -FromMsBuild" exited with code -1.
1>Done building project "ProjPlug.vcxproj" -- FAILED.
========== Rebuild All: 0 succeeded, 1 failed, 0 skipped ==========


Famous last words, but I am absolutely certain there is nothing wrong with the code. To triple check this fact, I copy the source folder to my desktop and open it in a second Visual Studio, prepared to go through each line of code (but having a reference to the original). Much to my surprise, the desktop copy… works. It just looks like it’s working. No broken references in the includes, right clicking on class declarations gives references etc…
Screenshot 2021-03-09 114817.png

I’m willing to bet the desktop copy would compile, yet I haven’t changed a single line of code.

This plugin has been frustrating me for almost a week. I really need to solve this. Please help…

Linker Tools Error LNK2001 | Microsoft Docs

Unresolved external symbol 99% of the time means you have a function that doesn’t have a cpp implementation but is being called.

Try compiling the desktop copy to make sure there is nothing wrong with it

Yeah it’s not very clear is it…

Are you sure the module is setup correctly? Maybe you can spot something by looking at my plugin:

2021-03-11 23_54_18- Microsoft Visual Studio.png[IMG2=JSON]{“data-align”:“none”,“data-size”:“full”,“src”:“https://forums.unrealengine.com/core/image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==”}[/IMG2]​

2021-03-11 23_54_12-Clipboard.png

Thanks for the responses. It looks like I was missing an include in a header, once added I was able to compile and move on… Though that doesn’t really explain the discrepancy in behaviour from VS really.