NONMEM Users Network Archive

Hosted by Cognigen

Some Notes on Use of NONMEM 7 (and PDx-Pop 4) with Intel Fortran 11 on Windows Platforms

From: Bachman, William <William.Bachman>
Date: Tue, 13 Oct 2009 10:36:13 -0400

Intel Fortran has historically presented issues with installation and
configuration of it's compiler on Windows systems. By comparison,
Digital and Compaq were user-friendly and set the environment variables
for the user during installation. To complicate matters, with every
version, Intel changed the deal somewhat with respect to by whom and how
the linker was provided and the names of batch file(s) that could be run
to set the environment (temporarily). I hope to provide some tips her
on using Intel 11 for NONMEM 7 on Windows platforms. (The installation
of Intel 11 on Linux and Mac OS X doesn't create similar issues as on
Windows.) The variation Intel chose regarding installation for Intel 11
on Windows is to provide the linker with the compiler package (some
previous versions required a separate purchase, installation, and
configuration of Microsoft Visual Studio to provide the linker).
However, it still does not set the environment variables in a system
wide manner.
There are three basic ways in which to use NONMEM in a manner in which
the Intel Fortran variables can be found and NONMEM will run
1. Intel provides a build environment window with its installation that
can be accessed from the Windows Programs menu system, e.g. on Windows
XP "Start > Programs > Intel Software Development Tools > Intel Fortran
Compiler > Fortran Build Environment for applications running on IA-32".
Intel correctly sets the environment for this window only. You can
install and run NONMEM successfully if you always use this window. This
is by far the easiest way to use Intel 11 and may suit your needs. The
downside is that it does not provide a system-wide environment to allow
NONMEM to be run from the typical Command Prompt window or from PDx-Pop.
2. The second method is to use the Command Prompt window ("Start >
Programs > Accessories > Command Prompt" on Windows XP)" and then find
and use the Intel batch file that can set the environment for this
instance of the Command Prompt. The name of the batch file used by
Intel 11 appears to ifortvars.bat and requires the appropriate command
line argument (ia32, ia32_intel64, intel64, ia32_ia64, or ia64)
depending on your cpu type and os type. For my system running a 32-bit
version of Window with a dual-core 32-bit cpu, the argument to
ifortvars.bat was "ia32". This method requires the environment batch
file to be run every time you open the Command Prompt to run NONMEM.
Additionally, due to the number of choices of the argument to the batch
file it can be confusing to determine the correct argument and it also
does not set the environment for PDx-Pop.
3. The third way to set the enviroment is to do so once and
permanently. I find the least confusing way to do this is to compare
the environment variables between the Intel build environment (set by
Intel) and the Command Prompt (not set) and add the differences found in
the Intel build environment from the Command prompt environment to the
system environment using the Control Panel:
a. first open a Command Prompt window ("Start > Programs > Accessories >
Command Prompt" on Windows XP)" and then write the environment variables
to a file:
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\>set >dos_env.txt
The environment variables can now be read from the dos_env.txt file and
represent the environment prior to being set by Intel.
b. next open the Fortran Build environment window ("Start > Programs >
Intel Software Development Tools > Intel Fortran Compiler > Fortran
Build Environment for applications running on IA-32") and then write the
environment variables to a file:

Intel(R) Visual Fortran Compiler Professional for applications running
on IA-32
 Version 11.0.074
Copyright (C) 1985-2009 Intel Corporation. All rights reserved.
Setting environment for using Microsoft Visual Studio 2005 x86 tools.
C:\Documents and Settings\bachmanw>cd \
C:\>set >build_env.txt
The environment variables can now be read from the build_env.txt file
and represent the environment after being set by Intel.
c. Compare dos_env.txt and build_env.txt to see the differences in the
entries that need to be added to the system environment. There are some
entries that just need to be modified like the PATH variable. There are
other entries that will need to be created and given values, e.g.
INCLUDE and LIB. There may also be a lot of other variables that don't
seem to be critical for making Intel Fortran 11 work. The critical
variables are PATH, LIB and INCLUDE (but it does not hurt to add the
other variables with Intel paths in them like IFORT_COMPILER11or
INTEL_LICENSE_FILE). You can do a manually (line-by-line) comparison of
the files to find the differences or use a file comparison program like
WinMerge or a DOS version of the diff progam if you have one available.
The differences found on one system were the following:
IFORT_COMPILER11=C:\Program Files\Intel\Compiler\11.0\074\fortran\

Files\Microsoft Visual Studio 8\VC\ATLMFC\INCLUDE;C:\Program
Files\Microsoft Visual Studio 8\VC\INCLUDE;C:\Program Files\Microsoft
Visual Studio 8\VC\PlatformSDK\include;C:\Program Files\Microsoft Visual
Studio 8\SDK\v2.0\include

INTEL_LICENSE_FILE=C:\Program Files\Common Files\Intel\Licenses

LIB=C:\Program =
Files\Microsoft Visual Studio 8\VC\ATLMFC\LIB;C:\Program Files\Microsoft
Visual Studio 8\VC\LIB;C:\Program Files\Microsoft Visual Studio
8\VC\PlatformSDK\lib;C:\Program Files\Microsoft Visual Studio

NDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Altiris\Software
Virtualization Agent\;C:\Program
Files\Microsoft Visual Studio 8\Common7\IDE;C:\Program Files\Microsoft
Visual Studio 8\VC\BIN;C:\Program Files\Microsoft Visual Studio
8\Common7\Tools;C:\Program Files\Microsoft Visual Studio
8\Common7\Tools\bin;C:\Program Files\Microsoft Visual Studio
8\VC\PlatformSDK\bin;C:\Program Files\Microsoft Visual Studio
Files\Microsoft Visual Studio 8\VC\VCPackages
Use the above entries only as a guideline, your system changes should be
based on the differences found on your system. On this particular
system, it was configured to use the linker from Microsoft Visual
Studio, your system may use the linker provided by Intel or other
The process for editing the environment is to use the Control Panel
(Start > Settings > Control Panel > System > Advanced > Environment
Variables > System Variables" and then New or Edit depending on whether
you want to add a new variable or edit an existing variable). You may
need to have an administrator edit the environment for you or be given
admin rights on your system).
This last method of setting the environment allows NONMEM to be run from
PDx-Pop or from any Command Prompt without the prior running of any
script to pre-set the environment.
Feedback from other users of Intel 11 with NONMEM 7 is welcome.
William J. Bachman, Ph.D.
Director, Pharmacometrics R&D
Icon Development Solutions
6031 University Blvd., Suite 300
Ellicott City, MD 21043
Office 215-616-8699
Cell 301-467-8635


ICON plc made the following annotations.
This e-mail transmission may contain confidential or legally privileged i=
that is intended only for the individual or entity named in the e-mail ad=
dress. If you
are not the intended recipient, you are hereby notified that any disclosu=
re, copying,
distribution, or reliance upon the contents of this e-mail is strictly pr=
ohibited. If
you have received this e-mail transmission in error, please reply to the =
sender, so that
ICON plc can arrange for proper delivery, and then please delete the mess=
Thank You,
ICON plc
South County Business Park
Dublin 18
Registered number: 145835

Received on Tue Oct 13 2009 - 10:36:13 EDT

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: