I run a fortran program using Visual Studio 2019 and Intel Parallel Studio XE 2020, including RogueWave IMSL library (student license) and Intel MKL library. When I try to run the exe file I get this error:
The procedure entry point mkl_lapack_ao_zgeqrf could not be located in dynamic link library C:\Program Files (x86)\RogueWave\imsl\fnl-2020.0.0\win100in170x64\lib\imslmkl_dll.dll
I looked it up and found there were several reasons for this error. First, the ddl file may not be registerd in the system. So I tried to register imslmkl_dll.dll, but I couldn't register it both in the system32 or sysWoW64, and I got this error: The module "imslmkl_dll.dll" failed to load. Make sure the binary is stored at the specified path or debug it to check for problems with the binary or dependent .dll files. So, this may due to a missing dependency. But I don't know how to deal with this problem. Finally, since I am using the a student license version of IMSL provided by RogueWave, could this be another possible reason?
I am wondering if anybody can explain to me why I get this error and how to fix it?
The fortran program is attached.
Thank you all in advance.
This post appears to be a continuation of your previous post . The linker error message may have been caused by an improper installation, incompatibilities between the versions of Visual Studio, Parallel Studio and IMSL that are used in combination, plus the choice of compiler options used.
In particular, the presence of "ao" in the name of the missing library suggests that you may have inadvertently chosen a compiler or linker option to use a MIC co-processor. Do you have a MIC card in your PC (unlikely)? This older thread may be worth reading.
I built the program using using the 16.0.8 compiler and IMSL 7. There were no linker errors. The resulting program ran until it reached the set of OPEN statements at line 2011 of Console1.f90. None of those files (nobs.txt, etc.) were included in your attachment.
In my response to your previous post, I had advised you to use STATUS='old' for opening existing files and STATUS='replace' for opening output files. This advice has not yet been applied to Console1.f90.
Please provide all the input files needed that cannot be generated by running Source1. Once you do that, if I see Console1 running to completion, we can start looking at what you can do to repeat that run. As of now, there are too many loose ends.