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

Problem to run a console application

reidar
New User
783 Views

I have a console application created with VS2013/IVF2013 XE under Windows 7. It works OK when  running on my desk computer on which it has been developed.  However, when I try to run it on my  other computers (also Win 7) it will not work.   An message box pops up telling me " The application was unable to start correctly (0xc000007b) Click OK to close the application" To illustrate the problem  a listing of the program that cause the problem is shown below.. This computer is also running Windows 7.

Can anybody give me a clue ?

  program TVSimulation
    
    USE IFPORT
    implicit none

    ! Variables
    INTEGER IDUM,ISTAT,i,IUNI
    IUNI=401
       I = SYSTEM("COLOR F1")

!    open(file='user', unit=IUNI) 
    open(file='user', unit=IUNI,carriagecontrol='FORTRAN')   
     print *, ' '
    print *, '************  START TVSim Release 5.12 ************'

!  Start calculation process here..................
 !   call TVSim_512(1,ISTAT)

    print *, 'PRESS RETURN TO EXIT AND CLOSE THE WINDOW'
    READ(*,*)
    
    end program TVSimulation

end program TVSimulation

0 Kudos
1 Solution
dboggs
New Contributor I
783 Views

I also experience this--or at least similar--problems, when I develop a program and run it successfully on my own computer, but fails to run on SOME other computers, and the error message mentions libifcoremdd.dll. Here's my own notes, fwiw:

Another situation is if a user library is accidentally built as a dll instead of static. If you (or more likely another user who you have distributed the exe to) tries to run the exe outside of the VS environment, an error such as “The program can’t start because libifcoremdd.dll is missing from your computer” will occur. This has been notorious in...

        Project > Properties > Fortran > Libraries

In the Debug configuration, Runtime Library should (normally) show as
        Debug Multithreaded (/libs:static /threads /dbglibs)
If it is different, for example
        Debug Multithread dll (/libs:dll /threads /dbglibs)
Then simply change it.

View solution in original post

8 Replies
GVautier
New Contributor II
783 Views

Hello

If the program has been compiled for X64, it will not run on a 32 bits system computer.

May be it's the problem.

0 Kudos
reidar
New User
783 Views

Yes, but the program has been built for 32 bits system. I must also mention that the program works fine on my home laptop which has Windows10, and also on my office laptop with W7.  But not at my colleagues laptops which indeed has the same system. Initially the problem seemed to be lack of  libifcoremd.dll, but thereafter the other problem described in my post #1 occurred..

0 Kudos
Steve_Lionel
Honored Contributor III
783 Views

This is not a console application, as best as I can tell. The “file=‘user’” suggests it is. QuickWin application, and would need to be built with /libs:qwin. Is it the exact same EXE that runs some places and not others?

0 Kudos
dboggs
New Contributor I
784 Views

I also experience this--or at least similar--problems, when I develop a program and run it successfully on my own computer, but fails to run on SOME other computers, and the error message mentions libifcoremdd.dll. Here's my own notes, fwiw:

Another situation is if a user library is accidentally built as a dll instead of static. If you (or more likely another user who you have distributed the exe to) tries to run the exe outside of the VS environment, an error such as “The program can’t start because libifcoremdd.dll is missing from your computer” will occur. This has been notorious in...

        Project > Properties > Fortran > Libraries

In the Debug configuration, Runtime Library should (normally) show as
        Debug Multithreaded (/libs:static /threads /dbglibs)
If it is different, for example
        Debug Multithread dll (/libs:dll /threads /dbglibs)
Then simply change it.

reidar
New User
783 Views

The program TVSIM was initially invoked from a dialog box in a Windows program and reported status to a progress bar in this dialogue. At some stage I decided to perform the number crunching outside in a separate program and project in the same workspace or solution..

I realize Steve are correct, the reason for this construct was to enable “advance= NO” as TVSim write the number of calculated increments done, as the alternative to the progress bar.                  The program works on computers with VS installed.

As it is now, the property/library was set to Multithreaded DLL and Use Common Windows Library.

I will try using runtime library=qwin.. Or to build a real console program, do I need to create this in a different solution?

0 Kudos
Steve_Lionel
Honored Contributor III
783 Views

You can use the same solution, but I would recommend creating a new project. Note that QuickWin programs are "Windows" applications, so in the Linker properties the Subsystem must be set to Windows and not Console.

0 Kudos
reidar
New User
783 Views

Thank you all for comments and advice!

Following the advice from dboggs solved the problem and it works as intended!

0 Kudos
dboggs
New Contributor I
783 Views

Glad it could help.

0 Kudos
Reply