Did you use C linkage when you declared the functions in your header? Otherwise C++ will think they’re C++ functions with C+±style name mangling and won’t be able to find the C function in link phase (at least I think that’s what causes it…see some of the samples in the SDK, cppIntegration is a good example of this (main in the cpp file, calling a function in a .cu file).
Hope that helps!
Ben
Edit: Unless, of course, you’re compiling with the nvcc flag --host-compilation=c++ which would invalidate the remainder of this post.