wenn du den header von c aus includest darfst du extern "C" nicht benutzen, da es eine solche Konstruktion in C nicht gibt.
Ich würde das mit bedingter Kompilierung machen:
#ifdef __cplusplus
extern "C" {
#endif
// hier stehen deine c++ funktions-prototypen
#ifdef __cplusplus
}
#endif