Solved Linking error by spliting JLCoverTreePoint.h into .h and .cpp files i.e. separating definitions and declarations. Forgot to add KNN.cpp last time