I am getting the message 'Error: executable does not exist' for several programs that previously compiled correctly. Even after compiling and linking completed the message 'the executable is out of date' appears. Is this correct?
Unexpected Error message
Are you using MK32 or another build system?
You need to provide details regarding what you did. It is possible to have a makefile mis-configured such that the EXE being checked is stale and the EXE built is in a different directory and is not checked for its date.
Dear mecej4,
I am using Plato's graphical interface and select the Start Run option on the Build tab to compile and link with options 'Checkmate' and 'x86' also selected. The FTN95 version 8.70 is being used. Even to 'Hello World' program above the problem appears.
IMPLICIT NONE
WRITE (*,*) \'HELLO WORLD\'
END
With my best regards,
Ricardo Azevedo
Ricardo
I suggest that you open and read the file called BuildLog that is in the same folder as your source file. It lists the build command(s) that Plato has performed for you.
You should also find the corresponding executable file in the same folder. If the source file is (say) prog.f90 then the executable will be prog.exe.
Paul
The build.log file contains: FTN95.EXE 'C:\Users\Lenovo\Desktop\FixedFormat1.for' /64 /NO_BANNER /VS7 /DELETE_OBJ_ON_ERROR /ERROR_NUMBERS /UNLIMITED_ERRORS /TABS 4 /LINK /CHECKMATE
Error log file is empty
Thanks in advance,
Observation: the code above runs perfectly well on my computer when compiled with GNU FORTRAN.
Ricardo
I have never tried putting the source file in the desktop folder so I don't know if the executable can be written to the same place.Even so, I would expect Plato to give a different error message if the desktop folder is protected in some way.
Maybe you should try running FTN95 from a Command Prompt window using the command reported in the BuildLog.
Thanks Paul,
But the same error occurs in other folders. I will keep studying the problem.
Regards,
Suggestions to try -- 1) remove the /DELETE_OBJ_ON_ERROR option 2) do the compilation and linking in separate steps 3) use a separate directory different from the Desktop (as Paul suggested).
An inconsistency in what you reported: why do you report using /64 in one post and state in another post that you are building for x86?
It is not uncommon for FTN95 to flag an error in a source file when Gfortran did not, and vice versa. If, because of the /DELETE_OBJ_ON_ERROR option, no OBJ file is produced, no linking will be done, either, and no EXE will be produced. If these things happen, you may not notice that something went wrong.
Thanks, mecej4,
I will follow your suggestions.
Best regards,
Ricardo
This is a very strange failure that I have not seen before.
I suggest that you look at this video https://www.youtube.com/watch?v=7P8vPlCPxuk&t=19s and follow the steps to run FTN95 from a 'Command Prompt' window. This should help you to discover what is going wrong.
A problem with creating a .exe can occur if the .exe file is 'in use' in another window.
This can occur if you have 2 copies of plato open and in the other Plato, you use the 'Start F5' option to run the program but did not close the cmd.exe like window. (Even with one use of Plato, leaving the 'cmd.exe like' window open is an habitual annoyance.) There could be other ways where the .exe file is in use.
The other main source of this problem is that you are not allowed to create a .exe file in the destination directory.
The best way to clear this problem is to delete the .exe and all .obj and .mod files and start again.
By the look of your posts, do you want to create the .exe in your Desktop ? Create a c:\Fortran_Projects\this_project and give your fixed format fortran file a better name.
By the look of your options, mixing 'Fixed format' and 'Tabs' is asking for problems. I would recommend looking in Plato at: Tools > Settings.. > Text Editor and select 'Replace tabs with spaces' select 'Tab size for plain text files' to 3 or 4 I think you can then save the file to remove tabs.
Although it is an Intel file format, tabs are never a good approach for Fortran code. Typically the tab interpretation of your IDE and the Fortran compiler are different. If used in columns 1:7 with fixed format, this can produce many compile errors that are not obvious.
John
As I recall, the /tabs option is provided automatically by Plato in order to sync the Plato settings with FTN95.