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

Link IVF 9.1 libraries with IVF 10.1

awadsley
Beginner
632 Views
Is it possible to link libraries compiled with IVF 9.1 with programs compiled using IVF 10.1? If this is not possible directly, would it be feasible to put a C-wrapper around the library calls and access them that way?

regards

Andrew Wadsley
0 Kudos
5 Replies
Steven_L_Intel1
Employee
632 Views
Yes, that is supported. The other direction is not.
0 Kudos
g_f_thomas
Beginner
632 Views

This workaroundsends me into a commodious vicus. If IVF 9 and 10 are link incompatible would the C wrappers have to be linkable toIVF 9 and/or 10? I presume the linker is the one that's part of VS.

Gerry

0 Kudos
Steven_L_Intel1
Employee
632 Views
Gerry, I don't understand your reply.

Code compiled with version x of the IVF compiler, where x is 8.0 or later, is generally link-compatible with code compiled by later versions and with the run-time libraries of later versions. Exceptions include module variable name decoration bugs. Other than that, objects are upwards compatible with later compilers and libraries. So far, there have not been linker issues to deal with.

I did just now think of one possible issue. If you compiled the source using VS2002/VS2003 and then tried to link on VS2005/VS2008, you may find a reference to libc.lib which no longer exists. This can usually be resolved with a /nodefaultlib:libc.lib at link time. (This is true for Fortran, NOT for C++.)
0 Kudos
g_f_thomas
Beginner
632 Views

I told you Steve that the query made my head spin! Just so I get this right, C wrappers are not required and their provision was what you meant by 'other direction' or am I still missing something. I'm familiar with the upwardly link compatible issue which is what puzzled me about the post.

Gerry

ps

1. My 'reply' was more of a request for clarification. How do you post to a thread without replying to something?

2. Is cross forum posting privileges limited to administrators/moderators?

0 Kudos
Steven_L_Intel1
Employee
632 Views
What I mean by "other direction" was, for example, linking IVF10.1-compiled code with IVF9.1 and its libraries. No wrappers are needed. But there are other compilers out there that do not have the notion of upward object compatibility and require that you recompile everything from source when you get a new version. We don't do that.

To add to a thread you have to reply, but it doesn't really matter to which post you do it. Cross-posting is generally discouraged. Moderators/admins may do it for announcements. Cross-posting causes duplication of effort and dilutes the benefit of the response.
0 Kudos
Reply