Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
Announcements
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.

Compiling with ifort

angiekia
Beginner
769 Views
Hello,
We have the new Intel compiler (11.0) installed at our Linux machines at University. The previous version we were using was 9.1.043. In order to compile something i was running the following commands (using libraries as well)
ifort -c *.f
ifort **.o **.o -L. -l** -o **
./**

With the new one, when i run the first command, I get
**.f(103): (col. 7) remark: BLOCK WAS VECTORIZED.
**.f(147): (col. 7) remark: LOOP WAS VECTORIZED, and another 100 of these.
Then i move one to the second line and i get this
ld: skipping incompatible ./lib**.a when searching for -l**
ld: cannot find -l**
However lib**.a exists in the folder and everything was working before.

What do I have to with the new compiler to make it to work again?
Any help would be appreciated.
Thanks

0 Kudos
4 Replies
TimP
Honored Contributor III
769 Views
Quoting - angiekia
ld: skipping incompatible ./lib**.a when searching for -l**
ld: cannot find -l**
However lib**.a exists in the folder and everything was working before.

This generally indicates you attempted a mixture of 32- and 64-bit objects. While the x86_64 linux has support for both 32- and 64-bit execution, it doesn't support linking them together.
Supposing that 'file *.a' indicates these are 64-bit objects, you must use the 64-bit compiler, such as you would get on PATH by
'source /opt/intel/Compiler/11.0/081/ifortvars.sh intel64'
You could check which compiler you have active by 'ifort -V'
0 Kudos
angiekia
Beginner
769 Views
Quoting - tim18
This generally indicates you attempted a mixture of 32- and 64-bit objects. While the x86_64 linux has support for both 32- and 64-bit execution, it doesn't support linking them together.
Supposing that 'file *.a' indicates these are 64-bit objects, you must use the 64-bit compiler, such as you would get on PATH by
'source /opt/intel/Compiler/11.0/081/ifortvars.sh intel64'
You could check which compiler you have active by 'ifort -V'

I was using the intel 64 and changing to 32 bit solved the problem. Thanks!
As to the * (col. 13) remark: LOOP WAS VECTORIZED. can i somehow turn this off- so as not to see them on the screen? I have a lot of fortran codes that are compiled every time - and it justs clutters my screen.
Thanks again!!
0 Kudos
TimP
Honored Contributor III
769 Views
Quoting - angiekia

I was using the intel 64 and changing to 32 bit solved the problem. Thanks!
As to the * (col. 13) remark: LOOP WAS VECTORIZED. can i somehow turn this off- so as not to see them on the screen?

-vec-report0 turns off vectorization messages. Apparently, it's the default for the next release.
0 Kudos
angiekia
Beginner
769 Views
Quoting - tim18
-vec-report0 turns off vectorization messages. Apparently, it's the default for the next release.

Thanks so much for your help! Everything is running smoothly now...
0 Kudos
Reply