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

FORTRAN Executable Appears To Depend On Debug DLL

halork
Beginner
1,331 Views
We are having a problem installing our software in our test environment. Our code is developed on VS 2008 C++ and Intel FORTRAN 10.1. We have FORTRAN executables that use a library of mixed FORTRAN and C utilities (FORTRAN calling C). The FORTRAN executables will not run on the test environment unless we include the debug library MSVCR90D.DLL in the manifest directory. This dependency does not show up with the dependency walker; it was discovered through trial and error. We have been going through all of our options settings but cannot find anything that ought to be referencing a debug library. We are about out of ideas; any help anyone can provide with this issue will be greatly appreciated!
0 Kudos
7 Replies
Steven_L_Intel1
Employee
1,331 Views
First thing I would recommend is to build a Release configuration. This should not depend on any debug DLLs. I can't think, though, of how you'd get the dependency that would not show up in Dependency Walker. Can you attach the Dependency Walker saved .dwi file for the application?
0 Kudos
halork
Beginner
1,331 Views
First thing I would recommend is to build a Release configuration. This should not depend on any debug DLLs. I can't think, though, of how you'd get the dependency that would not show up in Dependency Walker. Can you attach the Dependency Walker saved .dwi file for the application?
Thanks Steve. We are building a release configuration. I am enclosing the .dwi file from our test lab.

--Robert
0 Kudos
Steven_L_Intel1
Employee
1,331 Views
Curious. I see that there appears to be a dependency on MSVCR90.DLL (not the debug one) that isn't covered by a manifest entry - this is usually trouble. There's an entry for one with a manifest entry also in there. Another odd thing I notice is that g:raytheoneclipseservertemp_bin includes PSAPI.DLL, which is a Windows system DLL.

Are you very sure that it isn't MSVCR90.DLL that you need to copy? Can you show me the error message you get when you try to run the program without the MSVC DLL?
0 Kudos
halork
Beginner
1,331 Views
Curious. I see that there appears to be a dependency on MSVCR90.DLL (not the debug one) that isn't covered by a manifest entry - this is usually trouble. There's an entry for one with a manifest entry also in there. Another odd thing I notice is that g:raytheoneclipseservertemp_bin includes PSAPI.DLL, which is a Windows system DLL.

Are you very sure that it isn't MSVCR90.DLL that you need to copy? Can you show me the error message you get when you try to run the program without the MSVC DLL?
Thanks again. You're right, the PSAPI.DLL should not be there; it has been removed. I am enclosing error messages from the dependency walker and the syslog.

Someone here suggested we might have an incompatibility between our Intel FORTRAN version 10.1.021 and our Visual Studio 2008 SP1, and perhaps we need to install the redistributable DLLs from Visual Studio 2005?

0 Kudos
Steven_L_Intel1
Employee
1,331 Views
Ah, I'll bet it's something in the embedded manifest. I am not an expert on manifests but it might have been pulled in from something else. Does your EXE have a separate manifest file?

No, installing VS2005 redistributables won't help.. There's no compatibility issue I know of.
0 Kudos
halork
Beginner
1,331 Views
Ah, I'll bet it's something in the embedded manifest. I am not an expert on manifests but it might have been pulled in from something else. Does your EXE have a separate manifest file?

No, installing VS2005 redistributables won't help.. There's no compatibility issue I know of.
Hi again Steve,

We ultimately did find the dependency; it was in a C module that was being called by the FORTRAN code. Seems odd that dependency walker couldn't find it though. Perhaps it has limitations with code using multiple languages.

Thanks for your attention to this issue; we appreciate your help!

0 Kudos
Steven_L_Intel1
Employee
1,331 Views
Dependency Walker seems to have limitations when it comes to manifests, though it usually gets it right. I'm glad to hear that you figured it out.
0 Kudos
Reply