In C++, static at global/namespace scope means the function/variable is only used in the translation unit where it is defined, not in other translation units.
Here you are trying to use a static function from a different translation unit (Main.cpp) than the one in which it is defined (File.cpp).
Remove the static and it should work fine.