Chamando funções C ++ do arquivo C

Eu sou muito novo em C e C ++. Mas eu tenho algumas funções C ++ que eu preciso chamá-las de C. Eu fiz um exemplo do que eu preciso fazer

main.c:

#include "example.h"      
#include <stdio.h>

int main(){   
    helloWorld();
    return 0;
}

example.h:

 #ifndef HEADER_FILE
 #define HEADER_FILE

 #ifdef __cplusplus
     extern "C" {
 #endif
         void helloWorld();
 #ifdef __cplusplus
     }
 #endif

 #endif

example.cpp:

#include <iostream.h>

void helloWorld(){
    printf("hello from CPP");
} 

Isso simplesmente não funciona. Ainda recebo o erro de referência indefinida para_helloWorld&nbsp;no meumain.c. Onde está o problema?