NONMEM Users Network Archive

Hosted by Cognigen

RE: NONMEM and g77

From: Steve Chapel <steve.chapel>
Date: Mon, 17 Nov 2008 10:02:17 -0500

I made the changes so that NONMEM VI would be able to run with gfortran.

On Windows, if you do not make the change, you get the error:
  Fortran runtime error: Bad file descriptor
when you run NONMEM VI.

On Linux, if you do not make the change, you get the error:
  Fortran runtime error: File already opened in another unit
When you run NONMEM VI.

I linked to the gcc bug reports I filed for these problems.

It looks like the Linux problem will not be fixed, but it isn't much of a
problem because you can still get NONMEM VI to report output to the console
screen. In fact, the change I show causes output to be reported to the
console screen instead of being thrown away.

On Windows, gcc needs to be fixed to allow output to go to the console
screen. I'll see what I can do to motivate gcc developers to fix the
problem. It looks like a patch to fix the problem is ready. I will tell them
that we have discussed the issue on this mailing list and that NONMEM users
are waiting for a resolution of the issue.


-----Original Message-----
From: owner-nmusers
Behalf Of Nick Holford
Sent: Monday, November 17, 2008 3:12 AM
To: nmusers
Subject: Re: [NMusers] NONMEM and g77


By sending CONOUT$ to NMOUTPUT I think this means you dont get any
intermediate output on the console screen. So why did you make this
change? I find it quite helpful to be able to watch the progress of a run.

Would you please give a brief explanation of why you made these changes
for Windows and Linux?


Steve Chapel wrote:
> I've been able to compile and run NONMEM VI version 2.0 using nmqual-6.3.3
> and gfortran 4.3, both on Windows and on Linux. I had to make the
> changes:
> On Windows, edit changes.g77.nm6.xml:
> change CONOUT$ to a filename such as NMOUTPUT
> <>
> On Linux, edit changes.nix.nm6.xml:
> change the second /dev/null to /dev/tty and the third /dev/null to JUNK
> <>
> I used the MinGW version of the gcc compilers on Windows and the version
> gcc that ships with Fedora 10 on Linux.
> Ignore the huge number of warning messages the compiler spits out. When I
> test using, I get the same output as with g77 3.4.5 and 3.4.6.
> Steve
> -----Original Message-----
> From: owner-nmusers
> Behalf Of Darin Perusich
> Sent: Tuesday, September 02, 2008 9:38 AM
> To: Joachim.Grevel
> Cc: nmusers
> Subject: Re: [NMusers] NONMEM and g77
> gfortran releases after version 4.1 are not compatible with NONMEM
> because it is a Fortran 95 compiler and NONMEM is written to conform
> with the Fortran 77 standard. The gfortran developers claim that "most"
> Fortran 77 code "should" work with minimal or no code modifications but
> this didn't prove to be the case. I tried getting NONMEM to build with
> gfortran 4.2.x for the better part of a day using a myriad of
> compatibility options but it was to no avail, at which point I switched
> to GNU Fortran g77 3.3.5 and have had no issues what so ever.
> If anyone has had success building NONMEM with recent releases gfortran
> I'd be very interested in knowing which version and the options used.

Nick Holford, Dept Pharmacology & Clinical Pharmacology
University of Auckland, 85 Park Rd, Private Bag 92019, Auckland, New Zealand

Received on Mon Nov 17 2008 - 10:02:17 EST

The NONMEM Users Network is maintained by ICON plc. Requests to subscribe to the network should be sent to:

Once subscribed, you may contribute to the discussion by emailing: