Can anyone explain me why MinGW compiler gives multiple definition error about functions implemented in the two separate cpps and not declared in the headers?