Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

erros while running a compiled fortran code

Victor_H_2
Beginner
1,217 Views

Dear Sir,

I have compiled whitout any error the  following very simple fortran code, with "Visual studio 2015 Comunity" and "Intel Parallel Studio XE 2017". I used the simple code becouse when I did the same processes with a more complex code that run perfect with an old version of Visual Fortran i got the same resoult:

      IMPLICIT REAL*8 (A-H,O-Z)
          
      OPEN(UNIT=3,FILE='OUTPUT.DAT',STATUS='UNKNOWN') 
      OPEN(UNIT=4,FILE='INPUT.DAT', STATUS='old') 
    
      Read(4,*)
      Read(4,*)D0
      WRITE(3,*)'D0'
      WRITE(3,*)D0

      STOP
      END

When I run the solutions in Visual Studio doesn´t work and the following message appears:

'Console11.exe' (Win32): Loaded 'C:\Users\vherrero\Documents\Visual Studio 2015\Projects\Console11\Console11\Release\Console11.exe'. Module was built without symbols.
'Console11.exe' (Win32): Loaded 'C:\Windows\SysWOW64\ntdll.dll'. Cannot find or open the PDB file.
'Console11.exe' (Win32): Loaded 'C:\Windows\SysWOW64\kernel32.dll'. Cannot find or open the PDB file.
'Console11.exe' (Win32): Loaded 'C:\Windows\SysWOW64\KernelBase.dll'. Cannot find or open the PDB file.
'Console11.exe' (Win32): Loaded 'C:\Windows\SysWOW64\vcruntime140.dll'. Cannot find or open the PDB file.
'Console11.exe' (Win32): Loaded 'C:\Windows\SysWOW64\ucrtbase.dll'. Cannot find or open the PDB file.
'Console11.exe' (Win32): Loaded 'C:\Windows\SysWOW64\ucrtbase.dll'. Cannot find or open the PDB file.
'Console11.exe' (Win32): Loaded 'C:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2017.0.109\windows\redist\ia32_win\compiler\libifcoremd.dll'. Module was built without symbols.
'Console11.exe' (Win32): Unloaded 'C:\Windows\SysWOW64\ucrtbase.dll'
'Console11.exe' (Win32): Loaded 'C:\Windows\SysWOW64\imagehlp.dll'. Cannot find or open the PDB file.
'Console11.exe' (Win32): Loaded 'C:\Windows\SysWOW64\msvcrt.dll'. Cannot find or open the PDB file.
'Console11.exe' (Win32): Loaded 'C:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2017.0.109\windows\redist\ia32_win\compiler\libmmd.dll'. Symbols loaded.
'Console11.exe' (Win32): Loaded 'C:\Windows\SysWOW64\dbghelp.dll'. Cannot find or open the PDB file.
Console11.exe has triggered a breakpoint.

The thread 0x1818 has exited with code 29 (0x1d).
The thread 0x2998 has exited with code 29 (0x1d).
The thread 0x2498 has exited with code 29 (0x1d).
The program '[9568] Console11.exe' has exited with code 29 (0x1d).

 

 

0 Kudos
17 Replies
mecej4
Honored Contributor III
1,217 Views

The input file was not found in the current working directory when your program started running. You also compiled in "release" mode, so it is not possible to run in symbolic debugging mode.

You may ignore about the missing debug symbols in the system DLLs.

0 Kudos
Victor_H_2
Beginner
1,217 Views

Dear Sir,

Everything are working perfect. Even more complex projects. But I can´t run the executable file from VS 105, as I could with a previous version, although I chosen "release" option to build de project. Every time I press start, with release option, VS debugging process start.
I can run the executable from outside VS 2015 without any problem.

Thanks

 

 

 

0 Kudos
Steven_L_Intel1
Employee
1,217 Views

As has always been the case in Visual Studio, there is "Start" (F5), which starts the debugger, and "Start without Debugging" (Ctrl-F5), which doesn't start the debugger.  Recent versions of Visual Studio don't put the "without debugging" button on the toolbar by default, but you can add it.

0 Kudos
Victor_H_2
Beginner
1,217 Views

Dear Steve,

Your comments are very usuefull for me, Thanks. Now I´m having other problem:

While trying to compile the simple and very old suroutine I´ve attached the following message appears:

 


Error        error LNK2019: unresolved external symbol _MAIN__ referenced in function _main        libifcoremd.lib(for_main.obj)        

 

 

0 Kudos
Victor_H_2
Beginner
1,217 Views

For your information;

I´m using Visual Studio 2015 "community" and Intel Parallel Studio XE 2017.

I´m working in a projet and I´ve tried both "Build Solution" and "Build Console".

 

0 Kudos
mecej4
Honored Contributor III
1,217 Views

In order to build an EXE, you must have one Fortran source file containing one (and only one) main program, plus zero or any number of files containing modules, subroutines, functions, etc. You have no main program in your source file, only a subroutine is to be seen. Please read a Fortran textbook to get these ideas clear before attempting to run programs.

0 Kudos
Victor_H_2
Beginner
1,217 Views

Upss, Ok

0 Kudos
Victor_H_2
Beginner
1,217 Views

Dear Sir,

I installed Visual Studio 2015 Community with free student version Parallel Studio XE 2017. Also later I installed the IMSL subroutines in the student version. The address of the created files was automatically defined in the OS path variable.

Trying to compile the attached example, extracted from the Help of ISML:

Arise the following error messages:

Error        error #7002: Error in opening the compiled module file.  Check INCLUDE paths.   [ZREAL_INT]       

Error        error #7002: Error in opening the compiled module file.  Check INCLUDE paths.   [WRRRN_INT]       

 

I tried winless define the path variable to locate the subroutines. Ej. adding $(path) and also adding $(path) followed of the suroutine addreses with VS tools option para el compilador fortran

Apparently subroutines were installed successfully, since the directories containing them have been created.

0 Kudos
Steven_L_Intel1
Employee
1,217 Views

Where did you get the IMSL to install?  Does the folder C:\Program Files (x86)\VNI\imsl\fnl701\IA32\include\dll exist and does it have zreal_int.mod in it? Did you follow the instructions here to configure Visual Studio for IMSL?

PATH is not used for this - INCLUDE is the environment variable where compiled modules are looked for.

0 Kudos
Victor_H_2
Beginner
1,217 Views

Dear Steve

I bought the student version from Intel Page. I first installed PS XE, and i´m not sure if i choosen the using ISML option. Later i bought and installed ISML, the files you mention were be correctly created. 

I will try to fix the problem following the instruction you gave in the link.

0 Kudos
Victor_H_2
Beginner
1,217 Views

Dear Steve,

Aparently I fixed the problem adding the lines you sugested. But other problem appear refereded to the type of variables in line 26 and 27.

error #6633: The type of the actual argument differs from the type of the dummy argument.   [2]    line 26

error #6633: The type of the actual argument differs from the type of the dummy argument.   [XGUESS]    line 27   

I´ve attached the code I´m trying to compile. I copied the code as example from the help  file of IMSL. 

I,ve tryed to fix the problem in different manners, but no one of them works. The file I attached presents the least problems.

 

0 Kudos
mecej4
Honored Contributor III
1,217 Views

Do not blindly tinker with the arguments to an IMSL routine. If you wish to omit some optional arguments, you must use the <argument_name> = <variable or expression> form for the IMSL routine call. Perhaps, you could use

      CALL ZREAL (F, X, ERRABS, ERRREL, EPS, NROOT=NROOT, XGUESS=XGUESS)

 

0 Kudos
andrew_4619
Honored Contributor II
1,217 Views
! the example in the manual has    
  CALL ZREAL (F, X, errabs=errabs, errrel=errrel, eps=eps, &
                 nroot=nroot, xguess=xguess)

! also you pass X(NROOT) which is wrong.

 

0 Kudos
Victor_H_2
Beginner
1,217 Views

Thanks

0 Kudos
Victor_H_2
Beginner
1,217 Views

Dear Sir,

Now everything is working

Do you know which graphic Fortran subroutine that works with VS 2015 Community and PE XE 2017, could I use to plot real time the output of a Fortran code program?

Thanks for your help

 

0 Kudos
Victor_H_2
Beginner
1,217 Views

I have compiled and executed IVOAM routine with the example from the manual. It works ok with delta=(tn-tn-1)>=1.0, but doesn´t work with delta<1.0. The same case with other code using IVOAM for the integration of one very simple ODE  system. Could you please give some tip to use delta<1.0?

      USE IVOAM_INT
      INCLUDE 'link_fnl_shared.h'
      
      IMPLICIT   NONE
      INTEGER    IDO, IEND, NOUT, KORDER(2), iendmax      
      REAL       T, TEND, Y(2), HIDRVS(2), delta, tmax, T0
      EXTERNAL   FCN

      IDO  = 1
      T    = 0.0
      tmax = 80.0
      delta = 1.0
      Y(1) = 1.0
      Y(2) = 0.0
      KORDER(1) = 1
      KORDER(2) = 1
      
      
!                                 Integrate ODE
      IEND = 0
      iendmax = tmax/delta

      DO
         IEND = IEND + 1
         TEND = T + delta

         CALL IVOAM (IDO,FCN,T,TEND,Y,HIDRVS,KORDER=KORDER)
    
         IF (IEND.LE.iendmax) THEN
            WRITE (*,10) T, Y(1), Y(2)
!                                 Finish up
            IF (IEND.EQ.iendmax) IDO = 3
       CYCLE
         END IF
       EXIT

       END DO
  
 10    FORMAT (4F15.4)

      END
 
      SUBROUTINE FCN (IDO, T, Y, HIDRVS)
      INTEGER    IDO
      REAL       T, Y(2), HIDRVS(2)
      
      HIDRVS(1) = Y(2)
      HIDRVS(2) = -Y(1)
          
      RETURN
      END

 

0 Kudos
mecej4
Honored Contributor III
1,217 Views

This error has been previously reported to Roguewave. See https://forums.roguewave.com/showthread.php?1427-Strange-bug-(-)-in-FNL7-routine-IVOAM .

Your program runs with delta = 0.5 if you turn off optimization (use option /Od). If you wish to use optimization options to obtain desirable speed improvements, make sure that you disable FTZ (flush to zero) by specifying /Qftz- .

IVOAM has other bugs, as well;  see https://forums.roguewave.com/showthread.php?1720-Bug-in-IVOAM&s=485cb2bdbd1e6207d5fb3c738fed3b0d .

Here is a fine alternative that you may try: the Intel ODE library, at https://software.intel.com/en-us/articles/intel-ordinary-differential-equations-solver-library .

0 Kudos
Reply