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

Problem with MSVCR80.DLL

michael_green
Beginner
1,161 Views

I rebuilt a set of DLLs in both release and debug modes - no apparent problems. Now when I run the calling application in debug mode I get "The application has failed to start because MSVCR80.dll was not found ...". There is no problem running in release mode.

A quick scan of web sites mentioning this hints at scary looking problems - viruses are mentioned, for example.

I have rebuilt everything again, but no improvement. Any suggestions?

With many thanks in advance,
Mike

0 Kudos
4 Replies
DavidWhite
Valued Contributor II
1,161 Views
Quoting - michaelgreen

I rebuilt a set of DLLs in both release and debug modes - no apparent problems. Now when I run the calling application in debug mode I get "The application has failed to start because MSVCR80.dll was not found ...". There is no problem running in release mode.

A quick scan of web sites mentioning this hints at scary looking problems - viruses are mentioned, for example.

I have rebuilt everything again, but no improvement. Any suggestions?

With many thanks in advance,
Mike


Mike,

Have you checked the locations of msvcr80.dll and msvcr80d.dll on your system?

When in debug mode, is one project built in Release mode, so that it requires msvcr80 instead of the debug version?

Is the path set correctly to find the dll's?

Try using dependencywalker to check the required dll's - I guess there is a possibility that it isn't the flagged dll but one it uses.

Regards,

David
0 Kudos
Steven_L_Intel1
Employee
1,161 Views
If you are using this on a system that does not have Visual C++ installed, you can't use a Debug configuration DLL. (Or, at least, not one linked to the Debug DLL libraries.) You can change the Run-Time Library setting on the Fortran > Libraries property page.

Is it actually complaining about MSVCR80D.DLL?
0 Kudos
michael_green
Beginner
1,161 Views
Hi Guys,
When I build a particular dll in Visual Studio in debug mode, then switch to another VS session and call it from the main application (also in debug mode) there is no problem. I presume therefore there is no confusion between the MSVCR80 & MSVCR80D dlls.

The problem arises when I build the dll from a DOS script. I copied the active lines of the script from the command line listings in the VS properties dialog for the dll. The only changes are the trivial generalisation to %1 for source code name. There is no problem with the release version of the build, just the debug version.

Thanks again for your help.

Mike

Here is the complete script:

remThis batch script is called from the script dfbatch.bat which passes this
rem script a fortran source code file name via %1. Compiling and linking of
remboth release and debug versions then take place. Copies of the output .dlls
remare placed in the appropriate folders of the FMIS main program for testing
remand development.

remM.A.Green 19 September 2007
remUpdated for IVF10 & VS2005 13 June 2008

cd "K:371-forest management branchfmis devsourcevf fmisfmisdll source"%1

rem release version
ifort %1.f90 /compile_only /dll /nologo /module:"Release/" /object:"Release/" /libs:dll /threads /c

cd .release

Link /OUT:"%1.dll" /INCREMENTAL:NO /NOLOGO /NODEFAULTLIB:"libcmt.lib" /MANIFEST /MANIFESTFILE:"K:371-Forest Management BranchFMIS devSourceVF FMISFMISDLL source%1release%1.dll.intermediate.manifest" /SUBSYSTEM:WINDOWS /IMPLIB:"%1.lib" /DLL /MACHINE:I386 "%1.obj" "K:371-Forest Management BranchFMIS devLibraryVF libraryivflibivflibReleaseivflib.lib" kernel32.lib

copy %1.dll ......fmisrelease

cd ..

rem debug version

ifort %1.f90 /nologo /Zi /Od /module:"Debug/" /object:"Debug/" /traceback /check:bounds /libs:dll /threads /c

cd .debug

LINK /OUT:"%1.dll" /INCREMENTAL:NO /NOLOGO /NODEFAULTLIB:"libcmt.lib" /MANIFEST /MANIFESTFILE:"K:371-Forest Management BranchFMIS devSourceVF FMISFMISDLL source%1debug%1.dll.intermediate.manifest" /DEBUG /PDB:"%1.pdb" /SUBSYSTEM:WINDOWS /IMPLIB:"%1.lib" /DLL %1.obj "K:371-Forest Management BranchFMIS devLibraryVF libraryivflibivflibReleaseivflib.lib" kernel32.lib

copy %1.dll ......fmisdebug


0 Kudos
DavidWhite
Valued Contributor II
1,161 Views
Mike,

At the end of the debug section, you link to a release library. Is this a problem?
"K:371-Forest Management BranchFMIS devLibraryVF libraryivflibivflibReleaseivflib.lib"

David
0 Kudos
Reply