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

9.1 compatibility with Windows Forms applications

kenhagin
Beginner
824 Views
We have lots of legacy Fortran built with CVF 6.6. We tried to use this in VS2003 Windows Forms applications and when Fortran I/O was invoked and a thread exited, the cleanup code in DFORMD.DLL crashed the app. There was a nasty incompatibility between it trying to cleanup per-thread-data structures and the MSVCR71.DLL. We evaluated Intel 9.0, and it had exactly the same problem - it appeared it's runtime DLL was fundamentally the same, and depends.exe revealed it used MSVCRT.DLL (appeared to bebuilt against VC++ 6.0). If you know about the problem I've described, has it been fixed? If you don't know about the problem, then the question is this: Has the Fortran Runtime DLL for Intel 9.1 been built against VC2005 (we're now using VS2005), ie., using MSVCR80.DLL? If so, I'll get an eval copy of 9.1 and try again.
0 Kudos
4 Replies
Steven_L_Intel1
Employee
824 Views
I don't know about the specific problem you describe. The Intel Fortran libraries in 9.1 are still linked with MSVCRT.DLL. That will change in a future release. But I do suggest trying the latest 9.1 (9.1.033) and see if the problem is still there. If it is, please submit a test case to Intel Premier Support so that we can look at it. There should not be this sort of interaction.
0 Kudos
kenhagin
Beginner
824 Views

I may request an eval after Thanksgiving. I'm more interested in when the "future release" will likely be. My concern, that your still on top of MSVCRT.DLL, is that it indicates you are building against VC++ 6.0, and I believe Microsoft dropped support for it some time back. I know this because we're trying to get our legacy stuff on to newer generations, but our holdup for now is a trouble free Fortran in the mix.

For now, I wrote a C# program that goes through our old VC++ 6.0 DSP files, and for C/C++ files, it transfers them to a VC++ 8.0 VCPROJ file, and for Fortran files, it creates a subdir and passes them through F2C to become C++ files, and adds those to the VCPROJ file. This way, everything is built against VC++ 8.0 and I am guaranteed no runtime issues. Debugging is tricky, but not impossible. Not highly optimized... But then, this is legacy Fortran that has been in use, in some cases, for nearly 15 years.

0 Kudos
Steven_L_Intel1
Employee
824 Views

The "future release" is still some months out. If you'd be interested in beta testing it, send me an email (you can do so through this forum.) The beta has not yet begun.

I would like to see a test program that shows the problem.

0 Kudos
kenhagin
Beginner
824 Views

The attached ZIP file shows the problem, using CVF 6.6. I had the same problem with the eval IVF 9.0 I tried.

0 Kudos
Reply