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

Intel Visual Fortran for Windows > Intel Fortran for Linux

fgmurphy
Beginner
1,542 Views
With some much appreciated help from the Windows forum I have successfully migrated a legacy application from CVF to Intel Visual Fortran for Windows. I now need to also get my application running on Linux so I can utilize more machines to crunch numbers. Is there anyway to export a makefile from the Windows compiler or an equivalency chart for the compile and link flags?

Any help would be greatly appreciated. I am hoping that this process will not be too onerous since with the old compilers (Compaq)the code base compiled on both Unix and Windows. Any suggestions as to where I go from here?
0 Kudos
5 Replies
Kevin_D_Intel
Employee
1,542 Views

No means to produce a makefile from newer Visual Studio versions (I think starting w/MSVS 2005).

The Intel Fortran Users guide (Windows or Linux version) contains two quick reference sections; one for Windows and the other for Linux and Mac OS. Each containsa table summarizing Intel Fortran compiler options for the specific OS that also shows the equivalent compiler options for the other OS.

For example, from the index browse to: Intel Fortran Compiler Users and Reference Guides > Compiler Options > Quick Reference Guides and Cross References > Linux* OS and Mac OS* X Quick Reference Guide and Cross Reference to see Linux/Mac OS compiler options and the Windows equivalents.

For any MS LINK.EXE specific options, you will need to refer to the Linux linker (ld) man page to find the equivalents.

0 Kudos
fgmurphy
Beginner
1,542 Views
Sweet, thanks much. I'll start there and see how it goes.
0 Kudos
fgmurphy
Beginner
1,542 Views
OK, all the flags seem to have converted over quite easily with the guide you provided. However, I have run into another question which unfortunately stems mostly from my ignorance of Fortran on Linux. The code includes Kernel32.lib in the windows version. The Linux version gives error #7002 on the statement USE KERNEL32. Is there a Linux version of this libary? I searched the forums and internet, but couldn't seem to find anybody who has encountered the same issue.

Thanks!
0 Kudos
Kevin_D_Intel
Employee
1,542 Views

No Linux version. This library and module provide access to the Windows only operating system routines/APIs. You must determine which specific Windows routines are used and try locating the equivalent in the set of C library routines Linux provides.

There's interesting hits under Google using "windows api equivalent on linux". If you toss in a specific API name you likely can find a Linux equivalent.

There's lots of details about Windows/Linux differences in this Wikipedia article.

0 Kudos
fgmurphy
Beginner
1,542 Views

Yea, I was afraid you were going to say that. Thanks for the help.

0 Kudos
Reply