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.
29285 Discussions

Linking problem– Compatibility with Older Fortran Code

Klein1
Beginner
373 Views

I need to install an older toolset using ifort, but I downloaded the latest version, ifx, from the official website, which caused compatibility issues. Specifically, I encountered an error when make the Makefile :

 

 

ld: .../libforutils.a: error adding symbols: file format not recognized

 

 

After inspecting the contents of libforutils.a:

 

 

file libforutils.a  
libforutils.a: current ar archive
ar t libforutils.a

 

 

I found that it contains a series of .o files such as MatrixUtils.o.
Running file libforutils.a returned: 

 

 

MatrixUtils.o: LLVM IR bitcode

 

 

Although the .o files are of LLVM type, I can still recognize them with nm without issues—they are not corrupted.

From what I understand, ifx is based on LLVM, which might be causing the issue with ld not recognizing the file format?(In fact, the Makefile still uses xild and xiar, so I modified them to ld and ar )Or it could be something else?

However, I'm not familiar with Fortran, so I’m unsure how to resolve this issue within the ifx toolchain. I would greatly appreciate any guidance on how to fix this.

Thank you in advance for your help!

0 Kudos
0 Replies
Reply