p { margin-bottom: 0.1in; line-height: 120%; }
Hi everyone,
I have developed a code which uses cluster_sparse_solver. I can compile it (static) in my PC, which has WINDOWS10 OS.
But, I can not compile it in linux!!
I use the following commands for compilation:
$MKLPATH=$MKLROOT/lib/intel64
$MKLINCLUDE=$MKLROOT/include
and then
$mpiifort USEFULLS.f90 CONSTANTS.f90 PRE_PROCESSOR_3D.f90 DATATYPES.f90 VEL_SUBS.f90 SPARSE_SUB.f90 -L$MKLPATH -I$MKLINCLUDE/ -I$MKLINCLUDE/intel64/lp64 parallel00.f90 -Wl,--start-group $MKLROOT/lib/intel64/libmkl_intel_lp64.a $MKLROOT/lib/intel64/libmkl_intel_thread.a $MKLROOT/lib/intel64/libmkl_core.a $MKLROOT/lib/intel64/libmkl_blacs_intelmpi_lp64.a -Wl,--end-group -liomp5 -lpthread -lm -ldl -o t1
But, I see the following error message:
parallel00.f90(17): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [MKL_CLUSTER_SPARSE_SOLVER]
USE MKL_CLUSTER_SPARSE_SOLVER
------------^
parallel00.f90(61): error #6457: This derived type name has not been declared. [MKL_CLUSTER_SPARSE_SOLVER_HANDLE]
TYPE(MKL_CLUSTER_SPARSE_SOLVER_HANDLE) :: PT(64)
-------------^
parallel00.f90(268): error #6404: This name does not have a type, and must have an explicit type. [PT]
PT(:)%dummy = 0
--------^
parallel00.f90(268): error #6514: Substring or array slice notation requires CHARACTER type or array. [PT]
PT(:)%dummy = 0
--------^
parallel00.f90(268): error #6460: This is not a field name that is defined in the encompassing structure. [DUMMY]
PT(:)%dummy = 0
---------------^
parallel00.f90(268): error #6158: The structure-name is invalid or is missing. [PT]
PT(:)%dummy = 0
--------^
compilation aborted for parallel00.f90 (code 1)
Does anyone have any suggestion to solve this problem? Shall I compile MKL_CLUSTER_SPARSE_SOLVER.f90 in the include directory or it is not necessary? (I should say that even this compilation is not possible in my linux system, but I can do it in WINDOWS OS)
Best regards
Mehdi