function names in *.o files


I need to call c/cuda code compiled by nvcc from fortran 90.

when I look at the function names in the object files, my c functions have weired names like:

Z6c_dot_PfS_Pi (when the function was called 'c_dot’).

can I avoid this somehow? If not, is the linker supposed to find the right function?


extern “C” void c_dot();

that works, thanks