Problem generatinga 64-bit executable on a 32-bit system

Problem generatinga 64-bit executable on a 32-bit system

I have, in the past, succeded in doing this. However, I have modified a program (improved it!) and now, when I try and generate an executable for X64, I get a link error associated with the only module I have written. The link error message is  "fatal error LNK 1112: module machine type 'x64' conflicts with target machine type 'X86' ". I fail to see where I am asking for an X86 machine to be the target.

The command line, taken from the module's property pages is "/nologo /Qsave /module:"x64\Release/" /object:"x64\Release/" /libs:static /threads /winapp /c".
The module in question contains

module SUNOFFSETGLOBALS
use iflogm
USE ifwin
implicit none

 and then some declarations.

As far as I can see, the configuration manager is set up exactly as per the program for which I successfully generated a 64-bit executable. Here is what I have for the configuration manager:
It looks exactly the same as for the earlier solution when I succeeded in generating an X64/release/ executable.

I will attach the build files for the previous and the new programs for information. I am using VS2005 Pro and IVF Composer XE.

AnhangGröße
Herunterladen buildlog.zip2.55 KB
4 Beiträge / 0 neu
Letzter Beitrag
Nähere Informationen zur Compiler-Optimierung finden Sie in unserem Optimierungshinweis.

/MACHINE:I386

is in the linker options. This would happen for a project converted from CVF, which this one looks like. Edit the linker > Command Line property.

Steve - Intel Developer Support

Many thanks, Steve. That worked - it was indeed converted from CVF. I shall be aware of this wrinkle in future.

I do not look at the build log normally, but I did on this occasion and saw that there were two warnings about mismatched argument types that did not appear in the VS error list window when the link error was reported, so I missed them. Is this because the link error took precedence and prevented the other coding warnings from being listed?

I'm not sure I understand the question. The failed log shows both the compile warnings and the link error. The successful log didn't compile the source with the mismatch so you didn't see anything there. In any case, any compile diagnostics come out before the link step. If you simply overlooked them in VS it may be they scrolled out of sight.

By the way, the original problem comes from CVF inserting /MACHINE:I386 in its project files - this is not something the conversion wizard added.

Steve - Intel Developer Support

Kommentar hinterlassen

Bitte anmelden, um einen Kommentar hinzuzufügen. Sie sind noch nicht Mitglied? Jetzt teilnehmen