McIDAS Programmer's Manual
Version 2006

[Search Manual] [Table of Contents] [Go to Previous] [Go to Next]

Setting up a user account

In this section, you will learn how to establish a user account, which you and your system administrator will set up. You must have a user account to develop code in McIDAS-X. This user account is your development arena. From it, you can create and debug your own code and datasets without impacting other McIDAS-X users or developers.

Your user account will consist of these components:

Creating your user account

Establishing a user account is a joint effort between you and your system administrator. The responsibilities of each are described below.

The system administrator's responsibilities

Your system administrator can create an individual Unix account for you, configuring the system to acknowledge you as a user and assigning basic privileges and directories.

In addition, the system administrator should install the McIDAS-X package on your workstation and place it in a separate account named mcidas. The mcidas account contains directories and files that you will use when developing code.


See Chapter 1 of the McIDAS User's Guide for instructions on installing the mcidas account. See Chapter 2 of that manual for additional information on setting up user accounts.

Your responsibilities

Verify that the .profile (Korn shell) or .cshrc (C shell) file located in your user account's home directory contains the proper McIDAS-X- and vendor-specific directories. The presence and order of these directories in the environment variable PATH define the searching order when you run any command or script.

Insert these McIDAS-X-specific directories in your PATH in this order:

Also insert any required vendor-specific directories. Verify that the files and directories are placed in your PATH either by you, your system administrator, or the vendor. You can do this in your .profile file by appending your PATH environment variable. These directories contain the C compiler, the Fortran compiler, and other tools needed to develop your code.


See the section Preparing the mcidas Account in Chapter 1 of the McIDAS User's Guide for more information on modifying the PATH environment variable and a complete list of the required vendor-specific directories.


When developing McIDAS-X code, you will use the following two types of directories:

The mcidas account directories are provided with the McIDAS-X software, but you must create your own user account directories. These directories are described below.

mcidas account directories

When the system administrator installs the McIDAS-X software in the mcidas user account, a series of predefined directories is automatically created. You don't need copies of these directories in your user account; however, knowing their contents can help you when developing code. They contain examples of source code and data files used with core applications.

There are two types of mcidas account directories:

Package directories

Each version of McIDAS-X and other McIDAS packages (for example, McIDAS-XCD) builds its own set of directories. The names of the directories depend on the package name and version number. For example, the McIDAS-X version 200x package directories and their contents are shown in the table below.

Directory name


McIDAS-X data files


gzip library files for gzip compression


HDF library files for the ADDE MODIS servers


JPEG library files for the FRMSAVE command

~mcidas/mcidas200x/libgeotiff GeoTIFF files for the GeoTIFF server


McIDAS-X man files for subroutines and functions


netCDF library files for the ADDE servers


McIDAS-X source files, help files, and binaries


Tcl library files for the GUI

~mcidas/mcidas200x/tiff TIFF files for the GeoTIFF server


Tk library files for the GUI


zlib library files for the ADDE NEXRAD servers

Installation directories

The installation directories contain the files that are automatically generated when McIDAS-X is installed. The table below lists the directories and their contents.



program executables


data files


help files


include files




man files for subroutines and functions


Tcl and Tk executables and libraries

User account directories

A user account directory is a directory that you create to hold your locally developed code. It can include your local library with its source code, applications with their source code, and data files.

The table below lists the suggested user account directories you should create before you begin writing any local code. The $HOME/mcidas, $HOME/mcidas/data, and $HOME/mcidas/help directories are created when mcidas is first started from the $HOME account.

Directory name


root directory for local McIDAS-X code


local executables


local data files


source code for local functions and applications


helps for local applications


local development library


When you develop a new function for McIDAS-X, you must either add it to the McIDAS-X library or put it in a local library that you've created as part of your user account. The purpose of these libraries and some of the rules governing them are described below.

The McIDAS-X library

The McIDAS-X library, libmcidas.a, contains all the object code for the functions, subroutines, and Dynamic Link Modules that make up the McIDAS-X Application Program Interface (API). If you develop applications programs that link to libmcidas.a, be aware that the functions in this library are subject to change. SSEC reserves the right to modify or remove library functions.

You will receive a new library of functions and list of function changes with each McIDAS-X upgrade. The new library is in the file ~mcidas/lib/libmcidas.a.

Local libraries

When developing code, you will undoubtedly produce your own set of functions to support your applications, and need a local library to keep those functions with their applications' source code. Placing your functions in a local library allows you to isolate your local functions from the McIDAS-X core functions, making them less susceptible to naming collisions and eliminating the need to regenerate your functions after a McIDAS-X upgrade. A local library is also useful for referencing functions that SSEC has moved to the compatibility library.

Use the suggested conventions below when naming functions that you'll put in your local library. An example of creating and accessing a local library is provided in the next section, Compiling and linking your code.

[Search Manual] [Table of Contents] [Go to Previous] [Go to Next]