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

IVF runtime dependencies

lloydchriswilson
Beginner
2,799 Views

My program has a small exe stub that calls the computational dll. It works fine on my development computer. When I install on a test machine, I get the error message "The application failed to initialize properly (0xc0150002)." I have similar problems loading that sameDLL from my VB.Net application using LoadLibraryA (again, works fine on dev machine).

I installed dependency walker and ran. Found that I needed a few IVF dlls, which I included: libifcoremdd, libmmdd, msvcr80D. I also installed the C++ redist available from MS.

I've attached the dep walker file, in case you have a chance to pull it up and view it.

The application is compiled in debug mode--I'd like to distribute that way, at least initially.

I'm using IVF 11.0.061.

Thanks

0 Kudos
1 Solution
Steven_L_Intel1
Employee
2,772 Views

1. The manual does have some text on redistributing applications. Dependency Walker is the tool I recommend, but you need to know that the MSVC DLLs have to come from the Microsoft redistributable installer. We are in the process of building our own redistributable installer - not there yet,

2. No, unfortunately. Errors that are detected by generated code, such as array bounds, are not "catchable". There is an open feature request on this - I'll add your name to the list.

3. Not directly. There is SIGNALQQ which will let you be notified when an exception occurs, but you can't really recover from it. The Building Applications part of the documentation has a long chapter on exception handling which is worth a read. In some cases, you may need to wrap your Fortran code with some C++. For floating point exceptions in particular, we now support the Fortran 2003 IEEE modules which allow you nice control over the IEEE floating point exception environment.

I am curious - what prompted you to switch from Absoft to Intel?

View solution in original post

0 Kudos
30 Replies
Steven_L_Intel1
Employee
691 Views
Are you SURE you don't have any copies of MSVCR90.DLL on the system where WIndows can see it? That's the only way I could explain what you are seeing.
0 Kudos
johnnyontheweb
Beginner
691 Views
Steve Lionel (Intel) wrote:

Are you SURE you don't have any copies of MSVCR90.DLL on the system where WIndows can see it? That's the only way I could explain what you are seeing.

Yes, I'm sure. VS 2008 C++ redist installed and no MSVCR90.DLL in path. I don't know what to say, to produce this DLL I followed the instruction given to me by opensees community but honestly I don't have the full control of what happens in project configuration. The only thing that I never used before is the ISO_C_BINDING module. I also tried submitting my problem to opensees community, no answers until now. Giovanni
0 Kudos
Steven_L_Intel1
Employee
691 Views
Would you please ZIP this DLL and attach the ZIP to a reply here? If you don't want it to be public, use the Send Author a Message link and attach it there.
0 Kudos
johnnyontheweb
Beginner
691 Views
Sent to you as a private message, many thanks. Giovanni
0 Kudos
Steven_L_Intel1
Employee
691 Views
Thanks for the DLL. When I run this through Dependency Walker, I don't see MSVCR90.DLL as a "plain" dependency - it correctly shows me the shared assembly and shows no errors. Are you sure you are using this exact DLL when viewing with Dependency Walker?
0 Kudos
johnnyontheweb
Beginner
691 Views
Yes, maybe the previous DWI I sent to you was from the pc at work, in which there is Intel Composer XE. Now I'm trying to compiler in a 32 bit Windows with VS 2005 (so I've installed VC++ redist 2005), same issue, MSVCR80.dll not found. I'll send to you via private message also this DLL. Giovanni
0 Kudos
Steven_L_Intel1
Employee
691 Views
I replied to the message, but this new DLL looks pretty much the same other than being built with VS2005. All I can suggest is that you don't have the right MS redistributables installed on the target system. I gave you some hints for how to look for that. Please note I will be out of the office starting tomorrow through the 14th, so I won't see anything here in the meantime. I have asked other Intel engineers to keep a watch on topics.
0 Kudos
johnnyontheweb
Beginner
691 Views
Thank you so much for your work, it has been really appreciated. I'll continue to try. Giovanni
0 Kudos
johnnyontheweb
Beginner
691 Views
Nothing to do, I tried with VS 2008 and VS2005, MSCVR90.dll and MSCVR80.dll are missing, respectively, even after the installation of the EXACT version of VC libraries needed, detected from Dependency Walker and checked in C:\Windows\WinSxS. I'm wondering if there is something wrong with the VFProject settings, I'm checking them. My project need to make callings in C reference, can this thing matter? Giovanni
0 Kudos
johnnyontheweb
Beginner
691 Views

Finally I solved the issue, I set under "Properties/Linker/Input" the value "Ignore specific library" to "MSVCRT", because I had to set the other voice "Additional Dependencies" in the same mask with the file "minPackageC.lib". Compiling without manifest has worked.

I have another issue with another kind of DLL, for this I'll open another topic.

Thanks,

Giovanni

0 Kudos
Reply