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

Running 64bit executable

dannycat
New Contributor I
646 Views

Over the past few months I have been in the process of converting a large (mainly FORTRAN) windows application, containing sveral projects, from CVF into IVF. With the help of Steve Lionel in particular I have at last managed to create 32 bit versions in IVF that function OK although they have not been tested enough to allow me to ditch the older CVF yet. In the same development I have also set up the x64 version configurations and managed to compile and link the code to produce 64 bit executables in both debug and release configurations. I am using Visual Studio 8 on a 32-bit Dual Core laptop with Microsoft Vista Home OS.

During the conversion process I have changed all the declarations of handles etc to the appropriate types.

My problem is that when I copy the 64-bit executable onto a 64-bit computer they will not run. I get an error message box stating "Application failedto intialise properly (0xc-015002). Click on OK to terminate". I can't use the debugger because the code was created on an external device.

When I have time I might try compiling directly on the 64-bit machine but I 'd rather keep all the code together in one place.

Has anyone encountered similar issues or can offer any advice on what to try in order to locate the source of the problem?

Any help would be much appreciated.

0 Kudos
4 Replies
Les_Neilson
Valued Contributor II
647 Views

Don't forget when you copy the code to the other machine you will need to haveinstalled the 64 bit dlls too, such as libmmd, libifcoremd etc (use DEPENDS.EXE to find out which ones you need)
Note MicroSoft's strange naming convention on 64 bit OS (there is a reason)
Windows/system32 = directory where 64 bit stuff goes
Windows/SysWOW64 = directory where 32 bit stuff goes)



Les
0 Kudos
dannycat
New Contributor I
647 Views
Quoting - Les Neilson

Don't forget when you copy the code to the other machine you will need to haveinstalled the 64 bit dlls too, such as libmmd, libifcoremd etc (use DEPENDS.EXE to find out which ones you need)
Note MicroSoft's strange naming convention on 64 bit OS (there is a reason)
Windows/system32 = directory where 64 bit stuff goes
Windows/SysWOW64 = directory where 32 bit stuff goes)



Les

Thanks Les, Using the depends utility I have established that a DLL file that I created is calling up MSVCR90D.DLL but cannot be found. When searching the directories several files of this name were located in the Visual Studio 9.0/vc/redist/Debug_NonRedist directories although only in subdirectiories amd64 and x86. Has something not been properly installed, or am I barking up the wrong tree?
0 Kudos
Les_Neilson
Valued Contributor II
647 Views
Quoting - dannycat
Thanks Les, Using the depends utility I have established that a DLL file that I created is calling up MSVCR90D.DLL but cannot be found. When searching the directories several files of this name were located in the Visual Studio 9.0/vc/redist/Debug_NonRedist directories although only in subdirectiories amd64 and x86. Has something not been properly installed, or am I barking up the wrong tree?

That is the debug version - not for redistribution (or copying from pc to pc). Somewhere you are still linking to the debug files (or maybe you are trying to use a debug exe?) You need the release version - msvcr90.dll
Les
0 Kudos
dannycat
New Contributor I
647 Views
That's sorted it. Thanks Les, I had copied the debug version of the DLL file. When I copied the release version it solved the problem whereby the application runs and windows menu etc function fine, although there seems to be something not right with the OpenGL text display (next hurdle future post maybe if I can't fix it.). Bearing in mind that Visual Studio 9.0 + IFV 11.072 are both installed on the 64-bit machine why can't it run the debug version of the executable as it would need this if dugging interactively?

Thanks again.
0 Kudos
Reply