What is correct linkage method?
Where are your include guards for that header? That is a compiler error, and the reason is more than likely that you do not have include guards to prevent the definition being encountered two (or more times) per compilation unit.

Regards,

Paul McKenzie