 <p>It means that header "header.h" is included in more than one compilation unit.</p> <p>In this case variable GAMESTATE is defined in each module that includes the header.</p> <p>You should declare the variable without its definition in the header the following way</p> <pre><code>extern Gamestate GAMESTATE; </code></pre> <p>and then for example in main.cpp define it like</p> <pre><code>Gamestate GAMESTATE = MENU; </code></pre>