You should change __kernel void Fun(__global struct mPoint* p) definition.
The best way to fix your issue is to remove 'struct':
__kernel void Fun(__global mPoint* p)
Try to place the content of the main.h header file inside your kernel.cl file: I think what is going on is that when you compile your program, the compiler does not see your header file. Use -I option to the compiler (pass it to clBuildProgram) to point to the right directory where your header file will reside.