firemodels / fds

Fire Dynamics Simulator
https://pages.nist.gov/fds-smv/
Other
663 stars 622 forks source link

Cannot compile current scrc.f90 #9296

Closed drjfloyd closed 3 years ago

drjfloyd commented 3 years ago

Using current source with the current makefile on windows results in the following errors:

Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(12876): error #6460: This is not a field name that is defined in the encompassing structure. [POISSON_SYM] AS => G%POISSON_SYM -----------^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(12876): error #6795: The target must be of the same type and kind type parameters as the pointer. [AS] AS => G%POISSON_SYM ---^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(12878): error #6460: This is not a field name that is defined in the encompassing structure. [LAPLACE_SYM] AS => G%LAPLACE_SYM -----------^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(12878): error #6795: The target must be of the same type and kind type parameters as the pointer. [AS] AS => G%LAPLACE_SYM ---^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(13443): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [SCARC_MATRICES] USE SCARC_MATRICES ----^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(14257): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [SCARC_MATRICES] USE SCARC_MATRICES ----^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(18361): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [SCARC_FFT] USE SCARC_FFT, ONLY: SCARC_SETUP_FFT, SCARC_SETUP_FFTO ----^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(18493): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [SCARC_FFT] USE SCARC_FFT, ONLY: SCARC_SETUP_FFT_MESH ----^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(18494): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [SCARC_MKL] USE SCARC_MKL, ONLY: SCARC_SETUP_PARDISO_MESH ----^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(18519): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [SCARC_FFT] USE SCARC_FFT, ONLY: SCARC_SETUP_FFT, SCARC_SETUP_FFTO ----^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(18601): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [SCARC_FFT] USE SCARC_FFT, ONLY: SCARC_SETUP_FFT, SCARC_SETUP_MGM_FFT ----^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(18602): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [SCARC_MATRICES] USE SCARC_MATRICES, ONLY: SCARC_SETUP_MATRIX_MKL ----^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(19644): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [SCARC_MATRICES] USE SCARC_MATRICES, ONLY: SCARC_SETUP_SYSTEM_CONDENSED ----^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(19973): error #6580: Name in only-list does not exist or is not accessible. [MKL] USE SCARC_POINTERS, ONLY: L, G, MGM, MKL, AS, ST, SCARC_POINT_TO_MGM, SCARC_POINT_TO_CMATRIX -------------------------------------^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(20021): error #6580: Name in only-list does not exist or is not accessible. [MKL] USE SCARC_POINTERS, ONLY: L, G, MGM, MKL, FFT, AS, ST, SCARC_POINT_TO_MGM, SCARC_POINT_TO_CMATRIX -------------------------------------^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(18361): error #6580: Name in only-list does not exist or is not accessible. [SCARC_SETUP_FFT] USE SCARC_FFT, ONLY: SCARC_SETUP_FFT, SCARC_SETUP_FFTO ---------------------^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(18361): error #6580: Name in only-list does not exist or is not accessible. [SCARC_SETUP_FFTO] USE SCARC_FFT, ONLY: SCARC_SETUP_FFT, SCARC_SETUP_FFTO --------------------------------------^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(18493): error #6580: Name in only-list does not exist or is not accessible. [SCARC_SETUP_FFT_MESH] USE SCARC_FFT, ONLY: SCARC_SETUP_FFT_MESH ---------------------^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(18494): error #6580: Name in only-list does not exist or is not accessible. [SCARC_SETUP_PARDISO_MESH] USE SCARC_MKL, ONLY: SCARC_SETUP_PARDISO_MESH ---------------------^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(18519): error #6580: Name in only-list does not exist or is not accessible. [SCARC_SETUP_FFT] USE SCARC_FFT, ONLY: SCARC_SETUP_FFT, SCARC_SETUP_FFTO ---------------------^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(18519): error #6580: Name in only-list does not exist or is not accessible. [SCARC_SETUP_FFTO] USE SCARC_FFT, ONLY: SCARC_SETUP_FFT, SCARC_SETUP_FFTO --------------------------------------^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(18601): error #6580: Name in only-list does not exist or is not accessible. [SCARC_SETUP_FFT] USE SCARC_FFT, ONLY: SCARC_SETUP_FFT, SCARC_SETUP_MGM_FFT ---------------------^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(18601): error #6580: Name in only-list does not exist or is not accessible. [SCARC_SETUP_MGM_FFT] USE SCARC_FFT, ONLY: SCARC_SETUP_FFT, SCARC_SETUP_MGM_FFT --------------------------------------^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(18602): error #6580: Name in only-list does not exist or is not accessible. [SCARC_SETUP_MATRIX_MKL] USE SCARC_MATRICES, ONLY: SCARC_SETUP_MATRIX_MKL --------------------------^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(19644): error #6580: Name in only-list does not exist or is not accessible. [SCARC_SETUP_SYSTEM_CONDENSED] USE SCARC_MATRICES, ONLY: SCARC_SETUP_SYSTEM_CONDENSED --------------------------^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(19988): error #6404: This name does not have a type, and must have an explicit type. [MKL] MKL => L%MKL ---^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(19988): error #6460: This is not a field name that is defined in the encompassing structure. [MKL] MKL => L%MKL ------------^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(19991): error #6460: This is not a field name that is defined in the encompassing structure. [PHASE] MKL%PHASE = 33 ! only solving -------^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(19995): error #6460: This is not a field name that is defined in the encompassing structure. [PT] CALL PARDISO_D(MKL%PT, MKL%MAXFCT, MKL%MNUM, MKL%MTYPE, MKL%PHASE, G%NC, & -------------------------^ Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source\scrc.f90(19995): error #6460: This is not a field name that is defined in the encompassing structure. [MAXFCT] CALL PARDISO_D(MKL%PT, MKL%MAXFCT, MKL%MNUM, MKL%MTYPE, MKL%PHASE, G%NC, & ---------------------------------^ C:\Users\jfloyd\AppData\Local\Temp\4536413.i90(20326): catastrophic error: Too many errors, exiting compilation aborted for Y:/Private/jfloyd/Projects/FDS_Devel_Egnyte/6.0source/scrc.f90 (code 1) make: *** [makefile:127: scrc.obj] Error 1

mcgratta commented 3 years ago

It builds for me after I cleaned out the .mod and .obj files. I also use the oneAPI Intel Fotran compiler.

mcgratta commented 3 years ago

Susan -- you might want to check the dependencies in the makefile. Sometimes the code will compile cleanly when all old auxiliary files are erased, but not when they remain and the dependencies are not correct.

drjfloyd commented 3 years ago

It appears the current source only works if MKL is present. The variables it cannot find are hidden behind an #ifdef MKL statement

mcgratta commented 3 years ago

What version of the compiler do you have?

drjfloyd commented 3 years ago

Version 19.1.3.311 Build 20201010_000000

drjfloyd commented 3 years ago

Anyone compiling with gnu or any non-INTEL compiler won't have the Intel MKL though.

mcgratta commented 3 years ago

Good point.

Susan -- if you invoke an MKL parameter, you have to "hide" it in some way so that the code will compile without it.

Jason -- Glenn set up the scripts to compile with the new Intel oneAPI library that includes all this. It's free, apparently. When you have a chance, install it following https://github.com/firemodels/fds/wiki/Compiling-FDS-with-Intel-oneAPI

SusanKilian commented 3 years ago

I’ll check ...

Am 03.03.2021 um 19:16 schrieb Kevin McGrattan notifications@github.com:

Good point.

Susan -- if you invoke an MKL parameter, you have to "hide" it in some way so that the code will compile without it.

Jason -- Glenn set up the scripts to compile with the new Intel oneAPI library that includes all this. It's free, apparently. When you have a chance, install it following https://github.com/firemodels/fds/wiki/Compiling-FDS-with-Intel-oneAPI https://github.com/firemodels/fds/wiki/Compiling-FDS-with-Intel-oneAPI — You are receiving this because you were assigned. Reply to this email directly, view it on GitHub https://github.com/firemodels/fds/issues/9296#issuecomment-789949884, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADYYOFOJXDFQDLUD755ZX5DTBZ4HBANCNFSM4YRVPK6Q.

gforney commented 3 years ago

the mkl libraries are available with the previous Intel compilers. They are not installed by default, you have to select them during the install. They are intalled automatically with the oneAPI compilers

gforney commented 3 years ago

also, you can run the installer again to modify you installation to install the mkl libraries or something else then

On Wed, Mar 3, 2021 at 1:39 PM gforney notifications@github.com wrote:

the mkl libraries are available with the previous Intel compilers. They are not installed by default, you have to select them during the install. They are intalled automatically with the oneAPI compilers

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/firemodels/fds/issues/9296#issuecomment-789965280, or unsubscribe https://github.com/notifications/unsubscribe-auth/AC6UCRTBG77EY7XKCDWX7DDTBZ64JANCNFSM4YRVPK6Q .

-- Glenn Forney

SusanKilian commented 3 years ago

In fact, I have not yet provided the IntelMKL calls within the new PARDISO-MGM procedure with appropriate MKL directives, as I have done in many other places of my code before. I am currently in the process of correcting this. In principle, it should be sufficient to use appropriate directives around the corresponding code passages, or should I consider something else?

Kevin, the reason I didn't notice this was exactly the point you listed. The information was still available in undeleted files. I now basically delete in advance.

By the way, I am using the Intel OneAPI Compiler 2021.1 Beta 20201112 on Linux.

Am 3. März 2021 um 19:44 schrieb gforney notifications@github.com:

also, you can run the installer again to modify you installation to install the mkl libraries or something else then

On Wed, Mar 3, 2021 at 1:39 PM gforney notifications@github.com wrote:

the mkl libraries are available with the previous Intel compilers. They are not installed by default, you have to select them during the install. They are intalled automatically with the oneAPI compilers

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/firemodels/fds/issues/9296#issuecomment-789965280, or unsubscribe https://github.com/notifications/unsubscribe-auth/AC6UCRTBG77EY7XKCDWX7DDTBZ64JANCNFSM4YRVPK6Q .

-- Glenn Forney

— You are receiving this because you were assigned. Reply to this email directly, view it on GitHub, or unsubscribe.

drjfloyd commented 3 years ago

I got OneAPI to install. Had some other issues with the bat files which ultimately appeared be due to using the git.exe that came with SmartGit rather than the git suggested on the wiki page. But it now compiles fine. Thanks all.

mcgratta commented 3 years ago

If you think something is worth noting, add it to that wiki page unless the problem was very specific to your Windows environment.