There is a problem with passing INTEGER*8 arrays to library routines that expect INTEGER*4 arrays. No such problem occurs with scalar integer arguments as long as the variables do not need more than 32 bits to represent them.
Change INTEGER*4 to INTEGER in your program, and things will work correctly. If you really need to use INTEGER*8 arrays (for some reason that you have not so far explained), you will have to use a version of MKL that supports them (e.g., for X64 targets using the ILP64 libraries).
Either change INTEGER*8 to INTEGER in your code, or turn on the ILP64 support in MKL. Your program will work fine.
The easiest way to do (in this particular case) is to pass '-i8' option to ifort. For example, ifort -i8 -mkl mkl-dcoomm.f90