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

Problems migrating from CVF to IVF: Help Requested

mattintelnetfort
Beginner
209 Views
I've got three immediate problems I could use some help on. I am migrating code from Compaq Visual Fortran 6.6 to Intel 9.0. The application has significant C++ components and code base as well; we're moving these from Visual Studio 6 to Visual Studio 2003. I'm new to both Intel 9.0 and Visual Studio 2003. There is C++ and Fortran mixed within the overall workspace (i.e., solution), but not within a project. Individual projects within the workspace are either C++, F77, or F90. We build several F77 static libraries, then link them into a single DLL.
1) Archiving of the F77 libraries takes a long (long) time; in some cases over a minute for only 30 objects. This seems much slower than CVF. Any ideas? Also, I get many link warnings I did not see in CVF regarding common blocks defined in multiple object files though the library is successfully built:

Creating library...

XXXX_ipo.obj : warning LNK4006: _CUSTOMCOMMONBLOCKNAME already defined in YYYY_ipo.obj; second definition ignored

Build log written to file://D:BuildLog.txt

Engine_Lib1build succeeded.

2) When the DLL is linked which links all the F77 static libraries as well as some F90 objects from the local DLL project, I receive the following link error message:

Linking...

LINK : fatal error LNK1104: cannot open file 'dfnls.lib'

I was under the impression that nothing needed to change to support NLS, but future coding should reference 'USE IFNLS' instead of 'USE DFNLS'. I needed neither in CVF. Any ideas?
3) Finally, I cannot seem to edit the majority of the properties for the Fortran projects within the workspace (i.e., solution). I can see them, but Studio does not allow me to change them. The Fortran projects were migrated as part of the Studio solution migration; and then I performed the right-click "Extract Fortran project items" operation on each project within Visual Studio as described in the documentation. All source files seem to compile fine, but I have the problems described in items 1 and 2, and cannot change project settings.
Thanks for your help.
0 Kudos
2 Replies
Steven_L_Intel1
Employee
209 Views
1) I have seen one other report of the long library creation time. The user said she fixed it by turning off her network firewall - why this should have an effect, I have no idea. I'd appreciate it if you would file an issue with Intel Premier Support on this so that we can investigate. Please attach the following information:

- Start..Programs..Intel Software Development Tools..Intel Fortran Compiler 9.0..Build Environment for IA-32 Applications
- SET > set.txt

Attach the output file set.txt

The multiple definition should have been seen in CVF - it is usually caused by putting data initialization for a common block in an INCLUDE file that is used multiple times. The Fortran language allows you to initialize a common in one program unit only, preferably a BLOCK DATA subprogram. If you need further help with this, let me know.

2) You have somewhere in your project an explicit reference to the CVF library dfnls.lib. It could be in an object module or library that was not recompiled with Intel Fortran, or it is mentioned on the Linker property page as an input library. You should recompile all Fortran sources and remove any explicit reference to dfnls.lib. The USE DFNLS is ok.

3) I'm not sure what would cause that problem unless perhaps you somehow had multiple configurations selected. You should be able to right click on the project name, select Properties, Fortran, and bring up the property pages. If you can't resolve this, please submit an issue to Intel Premier Support and attach a ZIP of your solution folder so that we can take a look.
0 Kudos
Dishaw__Jim
Beginner
209 Views
Is the drive that you are using local or on the network? If it is local are you sharing that drive on the network?
0 Kudos
Reply