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

Installing Intel Fortran 32 bit compiler incorrectly configures Visual Studio 2017



I have Visual Studio 2017 15.5 installed. I installed Intel Fortran Composer 2018 update 1 edition with only the 32 bit Fortran compiler.  This is for our build machine.

Building the project in Visual Studio failed.  It failed to find the compiler ifort.exe.  In Visual Studio -> Options -> Intel Compilers and Tools->Visual Fortran -> Compilers, the path was $(IFortInstallDir)bin\ia32.  but that directory did not exist. Only intel64_ia32 folder was there.  I renamed the folder to ia32 but still failed.  Something about failing to find the 64 bit exe, sorry forgot to record the message.  

I eventually ran the Intel Fortran Installer again and installed the 64 bit compiler leaving the 32 bit compiler installed. The path was corrected to $(IFortInstallDir)\bin\intel64_ia32 in options.  This failed, forgot the message. I changed  the path to $(IFortInstallDir)\bin\intel64 and now in compiles.  It finds the ifort.exe.  The application I am building is 32bit but on another working machine, the path is set to $(IFortInstallDir)\bin\intel64 for some reason.

In summary, it looks like for Visual Studio integration, at least 64 bit compiler must be present. I have both 32 bit and 64 bit and it works.  When I installed just Intel Fortran 32 bit, the build failed. It could not find ifort.exe

My build now works but I thought I would write up what I found.




0 Kudos
1 Reply
New Contributor III

Hi Timothy,

I encountered the same issue for PSXE 2018 (and updates) for VS205 (update 3). The ia32 binary folder doesn't exist anymore and the link points still to ia32. But one can choose the intel64_ia32 folder for executables as you mentioned above. The I got the warning that ifort in 32 bit is deprecated:

Link: remark #10421: The IA-32 target wrapper binary 'Link' is deprecated.  Please use the compiler startup scripts or the proper Intel(R) 64 compiler binary with the '-qm32' option to target the intended architecture
1>Embedding manifest...

It works to choose the intel64 binary folder and use /Qm32 for the 64 bit executable.


0 Kudos