# How to move on from Compaq Visual Fortran

• Fortran
belliott4488
My group at work uses several pieces of legacy Fortran code which we've always compiled using Compaq Visual Fortran. Since CVF has not been supported for while now and is not (easily) compatible with Windows 7, I'd like to move to a more up-to-date compiler and IDE. I'm trying Simply Fortran first, since it's inexpensive and has been recommended on this forum.

The thing I'm noticing is that our code seems to expect certain things - libraries, I suppose - that came with CVF. I've seen a reference to DFLIB.MOD, and I know that executables look for DFORRT.dll or DFORMD.dll.

How can I find out what dependencies I have on CDF and what I should substitute for them? I'm hoping there was nothing unique about their libraries so that I'll be able to find the same resources in some open-source libraries.

Any guidance will be much appreciated - thanks!

## Answers and Replies

Staff Emeritus
Homework Helper
Some compilers have a standard set of libraries which are searched when an executable file is being constructed from compiled code. These libraries provide routines which handle and display run time errors, for instance, or routines which do certain numerical calculations. Most of these libraries for the CVF will be replaced by similar ones in the new Fortran development environment you will be using.

If your old programs use specific library routines from CVF to access operating system functions or open a window, for instance, you will need to examine your Fortran source files and isolate these routines. Your new environment will have different routines which should be used for these tasks.

Mentor
What about using a GNU compiler:

http://gcc.gnu.org/wiki/GFortran

Its open source, free and well maintained.

This is another alternative, Intel Fortran, a descendent of CVF:

http://software.intel.com/en-us/articles/migrating-from-compaq-visual-fortran

One issue that you could fix before migrating is removing any CVF extension used in your code or at least identify them.

These are extensions provided by CVF beyond what F77 standard says. They should be identifiable via a command-line flag during compile as warnings...

Staff Emeritus
Homework Helper
You've got two extremes here: GFortran (free) or Intel Fortran (\$). There are good compilers priced in between these two products (like Lahey or Absoft) which provide some development tools. Most compilers now available use at least the Fortran 90/95 standard, of which Fortran 77 is a subset language.

belliott4488
Thanks, all.

I chose Simply Fortran because it is based on the GNU compiler but also provides a nice IDE. It's inexpensive - compared to Intel Fortran, at least - so I'm trying to see if I can get everything working with it before I bite the bullet (or have my employer do it) to get Intel Fortran.

It sounds like I might be able to manage simply by searching my source code for references to CVF modules and removing them (??). I know that the CVF compiler creates executables that are dependent on CVF .dll files, but maybe if I compile the code with the new compiler it will simply use its own versions of any .dll files.

This is not my primary task at work, so I'll be plugging away at it over the coming months, but I can post updates in case they're of interest to anyone else.