NAG dco/c++ version 3.2

DCW3232NAL - Licence Managed

Microsoft Windows, 32-bit, Visual Studio 2010 - 2013

Installer's Note


1. Introduction

This document provides implementation-specific information relating to the installation of dco/c++.

This version of dco/c++ is suitable for Visual Studio versions between VS2010 and VS2013.

2. Implementation Provided

2.1. Applicability

This implementation is considered suitable for operation on the computer systems detailed below:

hardware:          Intel ia32 systems and compatible
operating system:  Microsoft Windows 32-bit and 64-bit editions
C++ compiler:      Microsoft 32-bit C/C++ compiler
                   (VS2010 <= VS version <= VS2013)

2.2. Supplementary Information

Please check the following URL:

for details of any new information related to the applicability or usage of this implementation. Details of any other systems on which it has been tested may also be found on this page.

3. Distribution

The software is available to download from any of the NAG websites (see Section 6 for contact details).

3.1. Contents

The following shows the folder and file organization of the implementation materials after installation:
            |- doc -|- in.html  (Installer's Note - this document)
            |       |- userguide.pdf (User Guide as pdf)
            |       |- licence -|- *  (licence management documentation)
            |- batch -|- envvars.bat  (batch file to set environment
            |                          variables for the C++ compiler)
            |- bin -|- (licence management tools, and compiler run-time DLLs)
dcw3232nal -|
	    |- include -|- *.hpp  (C++ header files)
            |- examples -|- (directories containing various example programs
            |            |   from the dco/c++ user guide, along with Makefiles)
            |- case_studies -|- (more sophisticated examples from the dco/c++
            |                |   user guide)
            |- lib -| (dco libraries and compiler run-time libraries)

4. Installation

4.1. Normal Installation

Assuming you have downloaded the dco/c++ installer from our website, run the self-extracting executable to start installation.

By default, the dco/c++ materials are installed in

  C:\Program Files (x86)\NAG\DC32\dcw3232nal
or the equivalent for your locale.

The environment variables PATH, LIB and INCLUDE are used by the Microsoft C++ compiler to locate run-time and compile-time directories used by dco/c++.

These environment variables can be updated during installation of dco/c++ with permission of the installer. Alternatively, you may set the variables on a temporary basis in a DOS command window by executing the file dcw3232nal\batch\envvars.bat.

This software is provided with an uninstallation facility via the Windows Control Panel.

4.2. Silent Installation

This product may be installed in silent (unattended) mode by running
  dcw3232nal_setup.exe /silent
  dcw3232nal_setup.exe /verysilent
from a command prompt. With the first version, the user sees a progress bar on the screen as the installation occurs, whereas with the second, nothing is displayed. The files will be installed to the default location and the environment variables will be modified. The default installation location may be overridden by using the /dir switch, e.g. /dir="C:\my folder". To prevent the environment variables being updated, the /type=noenv option may be used.

4.3. Licence Management

The use of this product is controlled by the Kusari licence management system. This release of dco/c++ uses version 2.2-88 of Kusari.

In order to enable the software, NAG will issue you with a licence key. The licence key is contained in a text file consisting of details of the software that will be enabled. For evaluation purposes a trial licence may be used. Before obtaining a full licence you need to know the Kusari hostid of the system on which you intend to use this product. How to do this is described below.

The easiest way to request a licence key is to use the Kusari Installer GUI described in the next section. Once you have a key, the same GUI can be used to install it.

The information below covers the most common requirements. For more complex licensing situations, please see the Kusari documentation (the files k-using-win.pdf and k-install-win.pdf in the dcw3232nal\licence\doc folder). See also the Kusari FAQ:

4.3.1. The Kusari Installer licence key request and key installation program

The recommended way to request a licence key is to use the Kusari Installer GUI program provided. This will help you to build a standard message requesting either a trial key or a full key which can be pasted into an email to the NAG Technical Support Service. This message will include the Kusari hostid.

To request a licence key, run the Kusari Installer program by running the program dcw3232nal\bin\kusari_key_gui.exe. Click on the Request New Licence button to bring up the New Licence Request form. Fill in your details and click on Generate Licence Request, then paste the generated information into your email client and send it to the NAG address given at the top of the generated information.

The NAG support team will send you the Kusari licence key by email.

A short term (demonstration or trial) licence key contains one or more lines like the following:

  DCW3232NA TRIAL 2018/03/31 "EMnxidA3oeoj0F1Yvi5ibxPjB7"
Specifically, it has a line containing the word TRIAL. Longer term licence keys must be locked to a specific computer, i.e. they will enable the software on one computer only. These licence keys typically include the word NODE or FULL instead of the word TRIAL above and may contain extra fields.

Once you have obtained one of the above licence keys, the Kusari Installer program may be used to install the key in the Windows Registry. Paste the key into the edit box on the main Kusari Installer dialog and then click on the Install Licence Key button to install it.

4.3.2. Command line licence key request

If for any reason it is impractical to use the GUI, the command line program khostid may be run instead. The output of this command should be sent to the NAG Technical Support Service with your details, your organisation details and your NAG customer reference number (if known).

The khostid command may be found in the dcw3232nal\bin folder.

4.3.3. Command line installation of the licence key in the registry

If not using the GUI, the klreg program may be executed from a Command Prompt to install a key in the registry. This program may be found in the dcw3232nal\bin folder. First put the licence key in a file, say licence.dat. If you have administrator privileges you can install the key for all users,
  klreg DCW3232NA licence.dat
Otherwise the key can be installed for the current user,
  klreg /current_user DCW3232NA licence.dat

4.3.4. Installing the licence key in a file

You are recommended to install the licence key in the registry as described above. If this is not suitable an alternative method is to put the licence key into a file accessible from the machine for which the software is licenced and set the environment variable NAG_KUSARI_FILE to the full pathname of the licence file.

The environment variable may be set from the Control Panel.

4.3.5. USB key licences

Simply insert the USB key in any spare USB socket on the machine on which you wish to run this product.

4.3.6. Testing the licence

Any of the example programs distributed with dco/c++ (see Section 5 below) may be used to check accessibility and licensing. For more details on how to install the licence, please see respective subdirectory after installation.

5. Example Programs

Access to the dco/c++ materials can be checked by running a few example programs following the advice given below. (Detailed documentation on dco/c++ and examples is located in the User Guide which can be found in the dcw3232nal\doc directory).

5.1. Running from a DOS command line

The output of the nmake command shows the compilation and link options used to produce each executable program. In addition, results of running the program are compared with reference results. Note that there may be small differences between observed and reference results, depending on the environment.

More sophisticated examples (case studies) are located in folders

To run all these examples change directory to the case_studies folder and type nmake. This will compile all examples located in the folder. Again, to run an example individually change to a subdirectory with the example of your choice and type nmake.

5.2. Running from Microsoft Visual Studio IDE

The following instructions apply to Microsoft Visual Studio 2012. If a different version of Visual Studio is being used the procedure may differ slightly.

If it is planned to use Microsoft Visual Studio to build programs that use dco/c++, each user should set the appropriate options.

Start Visual Studio and create your project in the usual way. We assume that your project is going to make use of the dco/c++.

The library is intended to be run in fully optimized mode, so for best perfomance you should set the active configuration to Release. Once Visual Studio has been opened, you can do this from the Toolbar or alternatively via the Build|Configuration Manager menus. Note that if you work in Debug mode you should use dco/c++ libraries linked against debug version of C/C++ run-times (libdcoc_M*d) see the table below for details.

Make sure the Platform is set to x86 (to ensure compatibility with this 32-bit implementation of dco/c++). This can be changed via the Configuration Manager... button on the Property Pages.

The following steps show how to add dco/c++ to the project:

  1. Open the Property Pages for the project. There are several ways of doing this including:

  2. From the form, click/expand Configuration Properties and then VC++ Directories in the leftmost panel. Then

    The folders are located at;

    		Include Directories
    		Library Directories
    The default install_dir can be found in Section 4.1.
  3. Click on the Apply button to accept the changes.

  4. From the Property Pages form, click/expand C/C++ in the leftmost panel (also under Configuration Properties) and then choose Preprocessor. Add _CRT_SECURE_NO_WARNINGS to the Preprocessor Definitions list.
  5. From the Property Pages form, click/expand Linker in the leftmost panel (also under Configuration Properties), then choose Advanced and disable the option "Image has Safe Exception Handlers".
  6. The dco/c++ and Intel run-time libraries need to be specified in the linker options. From the Property Pages form, click/expand Linker in the leftmost panel (also under Configuration Properties) and then choose Input. Add the appropriate library files to the Additional Dependencies list; please see the table below

    Click on the OK button to accept the changes and close the form.

  7. Additionally the appropriate C/C++ run-time library option needs to be set. First add your C++ file, e.g. a NAG example program, to the project, using Add Existing Item... from the Project menu. (If you don't have a C++ file in the project, the C++ options may not be visible.)

    Open the Property Pages again (as detailed above) and click/expand Configuration Properties (if required) and then C/C++, then click on Code Generation in the left hand panel. Then, from the right hand panel, select Runtime Library and change this to the appropriate version, for example /MD or /MT. This must match the version of the dco/c++ that you link to.

    Click on the OK button to accept the changes and close the form.

dco/c++ Library C/C++ Run-time Libraries
libdcoc_MD.lib Multi-threaded DLL (/MD) (Release)
libdcoc_MT.lib Multi-threaded (/MT) (Release)
libdcoc_MDd.lib Multi-threaded DLL (/MDd) (Debug)
libdcoc_MTd.lib Multi-threaded (/MTd) (Debug)

The project should now compile and link using the appropriate choice from the Build menu.

To run a program from within the Microsoft Development Environment, the program may be executed via the Debug menu (by selecting Start Without Debugging (Ctrl+F5), for example). If you are using /MD form of the library, you need to ensure that DLLs located in install_dir\bin folder are accessible at run time; therefore the PATH environment variable must contain install_dir\bin folder.

If a data file needs to be attached to the standard input or the output of a program needs to be redirected to the standard output, this can be achieved by selecting the Debugging section on the Properties form and inserting the appropriate commands in the Command Arguments field, e.g.

  < input_file > output_file

If the input and output files are not in the application's working directory, full or relative paths may need to be specified. This directory may be set via the Working Directory field, which is also on the Debugging page of the Properties form.

6. Support from NAG

Please see

for information about the NAG Technical Support Service, including details of the NAG Technical Support Service contact points. We would also be delighted to receive your feedback on NAG's products and services.

7. Contact Addresses

Please see

for worldwide contact details for the Numerical Algorithms Group.