static
s are not visible outside of the current compilation unit, or "translation unit". This is not the same as the same file.
Notice that you include the header file into any source file where you may need the variables declared in the header. This inclusion makes the header file a part of the current translation unit and (an instance of) the variable visible inside every compilation unit which includes the header fileit.