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

bad object files

normcler
Beginner
604 Views
Hello everyone,

I am trying to build a large application that already has been successfully built using CVF 6.6 and Lahey LF95. I do all my work from the command line using my own make files. I'm using version 36 of the Intel compiler, version 8.0.

I compile all the files of my program using the following compiler options:

/c /Qauto /fast /check:none /stand:f95 /warn:general /G6 /libs:static

All the files seem to compile correctly; object files are generated; and .mod files for all the modules. The /c option specifies compile only.

Then to link I have

ifort focus95.f90 /link (list of all the object files)

where focus95.f90 is the main routine of the program.

Focus95.f90 is compiled, and then when I get to the link stage I get error messages such as:

parlist.obj warning LNK4221: no public symbols found; archive member will be inaccessible

and

Design.obj : warning LNK4229: invalid directive '/Intel compiler non-linkable IL object
file' encountered; ignored.

I can't seem to find these warnings anywhere in the documentation. Anybody have any suggestions?

Thanks,

Norm Clerman
Opcon Associates, Inc.
0 Kudos
4 Replies
TimP
Honored Contributor III
604 Views
I have never seen the object file list given after /link. In particular, if you (or /fast)have done something which causes IL objects to be built, you would have to allow ifort to deal with them, rather than passing them directly to the linker.I guessyou have invoked IPO, or whole program optimization, whether you intended it or not. In your description, I don't see any reason for giving /link.
0 Kudos
Steven_L_Intel1
Employee
604 Views
Tim's right - you should not be using /link here. What happens when you remove it? Just treat the object files as if they were Fortran sources on the ifort command line.
0 Kudos
normcler
Beginner
604 Views
Many thanks to Mr. Prince. I'm a happy programmer.

I removed the /link directive, and for now, for testing purposes, I removed the /fast compiler option, and after many years I've finally built a program using the Intel compiler.

Norm
0 Kudos
Steven_L_Intel1
Employee
604 Views
Norm, that's great news! Be sure to let us know through Premier Support if you encounter problems in the future.
0 Kudos
Reply