- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I
have some code that I was able to debug through two weeks ago but now
when I attempt to compile and link I get the following error messages
below.
Why would this compile in Release mode but not Debug mode? I've run through the solution/project options with no luck.
Any help figuring this out is appreciated!!! Thanks =)
Build Log
Build Log
Debug
FORTRAN
/nologo /debug:full /Od /warn:interfaces /iface:cvf /module:"Debug\\" /object:"Debug\\"
/Fd"Debugvc90.pdb" /traceback /check:bounds /libs:static /threads /dbglibs /c
LINKER
/OUT:"DebugRSISPYEXE.exe" /INCREMENTAL:NO /NOLOGO /MANIFEST
/MANIFESTFILE:"K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXEDebugRSISPYEXE.exe.intermediate.manifest"
/MANIFESTUAC:"level='asInvoker' uiAccess='false'" /DEBUG
/PDB:"K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXEDebugRSISPYEXE.pdb"
/SUBSYSTEM:CONSOLE /IMPLIB:"K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXEDebugRSISPYEXE.lib"
Release
FORTRAN
/nologo /module:"Release\\" /object:"Release\\" /Fd"Releasevc90.pdb" /libs:static /threads /c
LINKER
/OUT:"ReleaseRSISPYEXE.exe" /INCREMENTAL:NO /NOLOGO /MANIFEST
/MANIFESTFILE:"K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXEReleaseRSISPYEXE.exe.intermediate.manifest"
/MANIFESTUAC:"level='asInvoker' uiAccess='false'" /SUBSYSTEM:CONSOLE
/IMPLIB:"K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXEReleaseRSISPYEXE.lib"
Why would this compile in Release mode but not Debug mode? I've run through the solution/project options with no luck.
Any help figuring this out is appreciated!!! Thanks =)
Build Log
|
Output |
Compiling with Intel Visual Fortran Compiler XE 12.1.1.258 [IA-32]... ifort /nologo /debug:full /Od /warn:interfaces /iface:cvf /module:"Debug\\" /object:"Debug\\" /Fd"Debugvc90.pdb" /traceback /check:bounds /libs:static /threads /dbglibs /c /Qvc9 /Qlocation,link,"c:Program FilesMicrosoft Visual Studio 9.0VC\\bin" "K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXERSIDECNFG.f90" K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXERSIDECNFG.f90(173): warning #6371: A jump into a block from outside the block may have occurred. [25] GOTO 25 -----------------^ K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXERSIDECNFG.f90(192): warning #6371: A jump into a block from outside the block may have occurred. [26] GOTO 26 -----------------^ ifort /nologo /debug:full /Od /warn:interfaces /iface:cvf /module:"Debug\\" /object:"Debug\\" /Fd"Debugvc90.pdb" /traceback /check:bounds /libs:static /threads /dbglibs /c /Qvc9 /Qlocation,link,"c:Program FilesMicrosoft Visual Studio 9.0VC\\bin" "K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXERSISPY.f90" K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXERSISPY.f90(433): warning #8055: The procedure has a dummy argument that has the ALLOCATABLE, ASYNCHRONOUS, OPTIONAL, POINTER, TARGET, VALUE or VOLATILE attribute. Required explicit interface is missing from original source. [INPUTDATL] CALL RSIDECNFG(FNam1,InputDatL,NumReadI) !Pass *.rsi file to decryption subroutine. Receive back original *.dat text line by line and # lines. -------------------------^ Linking... Link /OUT:"DebugRSISPYEXE.exe" /INCREMENTAL:NO /NOLOGO /MANIFEST /MANIFESTFILE:"K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXEDebugRSISPYEXE.exe.intermediate.manifest" /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /DEBUG /PDB:"K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXEDebugRSISPYEXE.pdb" /SUBSYSTEM:CONSOLE /IMPLIB:"K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXEDebugRSISPYEXE.lib" "DebugRSIDECNFG.obj" "DebugRSISPY.obj" Link: executing 'link' RSIDECNFG.obj : error LNK2019: unresolved external symbol _GETCWD@8 referenced in function _RSIDECNFG DebugRSISPYEXE.exe : fatal error LNK1120: 1 unresolved externals RSISPYEXE - 2 error(s), 3 warning(s) |
|
Output |
Compiling with Intel Visual Fortran Compiler XE 12.1.1.258 [IA-32]... ifort /nologo /module:"Release\\" /object:"Release\\" /Fd"Releasevc90.pdb" /libs:static /threads /c /Qvc9 /Qlocation,link,"c:Program FilesMicrosoft Visual Studio 9.0VC\\bin" "K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXERSIDECNFG.f90" K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXERSIDECNFG.f90(173): warning #6371: A jump into a block from outside the block may have occurred. [25] GOTO 25 -----------------^ K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXERSIDECNFG.f90(192): warning #6371: A jump into a block from outside the block may have occurred. [26] GOTO 26 -----------------^ ifort /nologo /module:"Release\\" /object:"Release\\" /Fd"Releasevc90.pdb" /libs:static /threads /c /Qvc9 /Qlocation,link,"c:Program FilesMicrosoft Visual Studio 9.0VC\\bin" "K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXERSISPY.f90" Linking... Link /OUT:"ReleaseRSISPYEXE.exe" /INCREMENTAL:NO /NOLOGO /MANIFEST /MANIFESTFILE:"K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXEReleaseRSISPYEXE.exe.intermediate.manifest" /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /SUBSYSTEM:CONSOLE /IMPLIB:"K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXEReleaseRSISPYEXE.lib" "ReleaseRSIDECNFG.obj" "ReleaseRSISPY.obj" Link: executing 'link' Embedding manifest... mt.exe /nologo /outputresource:"K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXEReleaseRSISPYEXE.exe;#1" /manifest "K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXEReleaseRSISPYEXE.exe.intermediate.manifest" RSISPYEXE - 0 error(s), 2 warning(s) |
Debug
FORTRAN
/nologo /debug:full /Od /warn:interfaces /iface:cvf /module:"Debug\\" /object:"Debug\\"
/Fd"Debugvc90.pdb" /traceback /check:bounds /libs:static /threads /dbglibs /c
LINKER
/OUT:"DebugRSISPYEXE.exe" /INCREMENTAL:NO /NOLOGO /MANIFEST
/MANIFESTFILE:"K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXEDebugRSISPYEXE.exe.intermediate.manifest"
/MANIFESTUAC:"level='asInvoker' uiAccess='false'" /DEBUG
/PDB:"K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXEDebugRSISPYEXE.pdb"
/SUBSYSTEM:CONSOLE /IMPLIB:"K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXEDebugRSISPYEXE.lib"
Release
FORTRAN
/nologo /module:"Release\\" /object:"Release\\" /Fd"Releasevc90.pdb" /libs:static /threads /c
LINKER
/OUT:"ReleaseRSISPYEXE.exe" /INCREMENTAL:NO /NOLOGO /MANIFEST
/MANIFESTFILE:"K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXEReleaseRSISPYEXE.exe.intermediate.manifest"
/MANIFESTUAC:"level='asInvoker' uiAccess='false'" /SUBSYSTEM:CONSOLE
/IMPLIB:"K:PyrotecSoftwareRSISimcon930680IVFRSIIOFACEEXERSISPYEXEReleaseRSISPYEXE.lib"
1 Solution
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You have /iface:cvf set for Debug, not Release. Take it out of Debug. This is under Fortran > External Procedures.
Link Copied
4 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You have /iface:cvf set for Debug, not Release. Take it out of Debug. This is under Fortran > External Procedures.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you so much!!! I don't remember flagging this option for Debug since then but I must have.
One more question: when I incorporate this code into some legacy code (or vice versa), I'll be using RSISPY.f90 as the routine that will interface with a 3rd party executable (say Excel). So I'll be needing to use the '!DEC$ ATTRIBUTES DLLEXPORT ::' calling procedure.
Will I need to add any additional modifiers to the calling procedure like STDCALL?
One more question: when I incorporate this code into some legacy code (or vice versa), I'll be using RSISPY.f90 as the routine that will interface with a 3rd party executable (say Excel). So I'll be needing to use the '!DEC$ ATTRIBUTES DLLEXPORT ::' calling procedure.
Will I need to add any additional modifiers to the calling procedure like STDCALL?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
If your code will be called from Excel, then yes, you will need STDCALL and probably REFERENCE and ALIAS as well.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks Steve! I'll find out what works when the time comes.

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page