IVF MSB8018: No outputs specified for item
2016-05-04 23:39:59 来源： 评论：0 点击：
I maintain several legacy Fortran programs, some of which have code going back to the '60s. We used Compaq Visual Fortran (CVF) for years to build the code as DOS console applications, but I've recently acquired Intel Visual Fortran (IVF) so that I can continue to maintain the code on 64-bit Windows 7.
I recently attempted to build the code using IVF for the first time, and I get no warnings or errors, and the final message is "Build succeeded", but I get no .exe file(s). It creates the designated folder (/Release or /Debug) and writes some log files there, but there is no .exe.
Any suggestions? I've tried looking through the project properties but haven't found anything obvious.
Some more details:
The "Output File" entries under Properties|Linker are ".\Release\myProjectName.exe" and ".\Debug\myProjectName.exe" for the Release and Debug configurations, respectively. The folders get created when I build in either configuration.
The only files placed in them, however are:
myProjectName.lastbuildstate myProjectName.log myProjectName.write.1.tlog files
(in both .\Release and .\Debug folders)
plus the file myProjectName.vcxprojResolveAssemblyReference.cache in \Debug.
I'm not sure what other settings might be relevant - if you'll name them, I'll check and post their values.
EDIT: It just dawned on me that not only am I getting no .exe files, I'm not getting any .obj files, either, so apparently my source files aren't being compiled at all (?).
UPDATE: I've tried selecting just one source file (from the Solution Explorer) and compiling it. I still get "build succeeded" (with no output file), but now I get this warning:
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(151,5): warning MSB8018: No outputs specified for item "src\FALL.F90". Its custom build command will be skipped.
That's odd, no? Looking at the Properties for the source file, I see that under Configuration Properties|General|Item Type there is the entry, "Custom Build Tool" - is that right for a .F90 source file? Looking at the drop-down menu for that setting, I don't see any references to Fortran at all - should I see the Intel Visual Fortran compiler listed there or anywhere else?
[Note: under "Custom Build Tool" in the Properties there are no entries other than a generic one for "Description".]
Did you create a new Intel Fortran project from scratch, or did you try some sort of conversion process? Your symptoms indicate very much that you are not working with an Intel Fortran project. I would ask on the relevant Intel forum - software.intel.com/en-us/forums/…. – IanH Mar 13 '14 at 22:39
As I mentioned in the OP, this was a Compaq Visual Fortran project. Intel Visual Fortran (or Visual Studio) converts the project when it opens it, but I'm learning that the conversion is not always reliable, so I am now attempting to construct a new VS "Solution" using the project source files. – Bruce E. Mar 14 '14 at 19:30
Have you considered using a build system like Make of CMake? I have very little experience with VS "solutions", but I suppose this method of building your project will be tied to the IDE? Using a build system is more portable and allows you to automate the process easier. Also, you can use nice tools like a build server for continuous building and testing of the code (assuming you've got some automated tests). My experience is that this is just as helpful for legacy software as for new, fancy, "state of the art" software – Paul Mar 14 '14 at 20:26