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

Fortran Compiler Using -m32

carla_b_franklin
Beginner
890 Views
We have the 64-bit Intel compiler installed on a 64-bit machine running Centos . I thought I could add the -m32 to the "ifort" command to get a 32-bit executable, but I get the following error:

catastrophic error: Compiler configuration problem encountered. The expected target architecture compiler is missing (12.1-ia32 != 12.1-intel64)

Can you help me fix the problem?
Thanks.

0 Kudos
3 Replies
Steven_L_Intel1
Employee
890 Views
-m32 would cause the ifort driver to invoke the 32-bit compiler, which you don't have installed. You'll need to install the 32-bit compiler to make -m32 work. Please read the compiler release notes for details on what 32-bit Linux components you may need to find and install.
0 Kudos
TimP
Honored Contributor III
890 Views
The release notes describe the requirements only loosely. I found the first step was to install the 32-bit glibc-devel .rpm for the distribution you are running. Then it was necessary to upgrade to 32- and 64-bit g++ of the same CentOS release version (both gcc and gcc-g++ rpms), or you can build the combined 32- and 64-bit g++ from the gcc source version of your choice. Once you have g++ -m32 working, you can install the ifort ia32. Needless to say, you would wind up with an installation which doesn't match exactly what was used for ifort validation testing, without the advantages of an up to date gcc-g++-gfortran.
ifort works with any recent g++, even the 4.7.0 which was released yesterday, but icpc 12.1 wiill work only up through g++-4.6.3.
0 Kudos
Steven_L_Intel1
Employee
890 Views
Linux is a little maze of twisty distros, all different. The release notes cannot possibly provide exact detail for each distro and version what might be needed for doing 32-bit compiles on a 64-bit Linux, and any such advice would probably be obsoleted by a new version of a distro. CentOS is not even listed as a supported distro. The release notes do say:

Development for a 32-bit on a 64-bit host may require optional library components
(ia32-libs, lib32gcc1, lib32stdc++6, libc6-dev-i386, gcc-multilib) to be installed from your
Linux distribution.
0 Kudos
Reply