How to add external code to a project? (Getting 'unresolved external symbol' errors)

I’m trying to add FastNoise (GitHub - Auburn/FastNoiseLite: Fast Portable Noise Library - C# C++ C Java(Script) HLSL GLSL) to a c++ project. I’ve successfully linked third party libraries to a project before, but FastNoise just seems to be a .h and .cpp file (no .lib or.dll) so I’m not sure how to add it to a project.

I tried simply adding FastNoise.h and FastNoise.cpp to my project’s source folder, and then including the header and using a function, but the compiler throws LNK2019 errors:

LNK2019    unresolved external symbol "public: void __cdecl FastNoise::SetSeed(int)" (?SetSeed@FastNoise@@QEAAXH@Z) referenced in function "public: class TArray<float,class FDefaultAllocator> __cdecl UNoiseMakerComponent::Make2DHeightMap(int,int)" (?Make2DHeightMap@UNoiseMakerComponent@@QEAA?AV?$TArray@MVFDefaultAllocator@@@@HH@Z)

So it seems like the code isn’t being properly linked? I see other people are using FastNoise in the work, but I can’t figure out what they’re doing differently.

It seems like that library has a specific UE4 plugin that you can use:

https://github.com/midgen/UnrealFastNoise

As far as adding third party code to your project, check out this post

Awesome, thanks!