CDF Version 2.7, MS-DOS Systems !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! NOTE !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! Microsoft C/Fortran is not supported due to problems with our local !! !! installation of the compilers. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Common Data Format (CDF) is a conceptual data abstraction for storing multi-dimensional data sets. The basic component of CDF is a software programming interface that is a device independent view of the CDF data model. The application developer is insulated from the actual physical file format for reasons of conceptual simplicity, device independence, and future expandability. Version 2 of CDF has been rewritten to be portable across a wide variety of platforms. CDF files created on any given platform can be transported to any other platform on to which CDF is ported and used with any CDF tools or layered applications. A more detailed introduction to CDF can be found in the CDF User's Guide. For MS-DOS systems, the library and executables are available in addition to the source code. The source code is provided in case you are using a C compiler other than those currently supported (which affects whether or not you will be able to use the precompiled libraries). The currently supported C compiler is Borland C for this release. Fortran support is provided for Microsoft Fortran. The CDF library and toolkit programs are written in C. A C compiler is necessary to build the CDF distribution (if you need to because you are unable to use the prebuilt libraries for Microsoft and Borland). The CDF distribution also contains several Fortran source files which support the testing of the Fortran interface. If a Fortran compiler is not available, the distribution can be built without Fortran support. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! WARNING !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! !! !! If you are going to be writing Fortran applications using Microsoft !! !! Fortran, you'll still need to have Microsoft C in order to link your !! !! application to the CDF library. This is because the CDF library is !! !! written in C and calls run-time functions. When linking your !! !! application with the CDF library, the Microsoft C run-time library !! !! will be referenced to resolve the calls to C run-time functions. !! !! !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Documentation for CDF consists of the CDF User's Guide, the CDF C Reference Manual, and the CDF Fortran Reference Manual. The `RELEASE.DOC' file explains how to get/print the documents. Requests for assistance or documentation should be sent to: DECnet -- NCF::CDFSUPPORT (15578::CDFSUPPORT) Internet -- cdfsupport@nssdca.gsfc.nasa.gov (128.183.241.14) If you get the distribution, please send CDFSUPPORT a message so we can put you on our mailing list. That way you will be notified of new releases. MS-DOS Installation Instructions -------------------------------- CDF V2.7 is distributed for MS-DOS systems in self-extracting LHA files (which are executables with extensions .EXE). The LHA utility is similar to ZIP/UNZIP. When a self-extracting LHA file is executed, one or more files and/or directories will be created in the current directory. You do not need the LHA utility to extract the CDF distribution. The CDF distribution is broken into several parts so that you can install only the parts that you need. To extract the files from a self-extracting LHA file, simply set your default directory to where the files (or directory tree of files) are to be placed and execute the appropriate executable as follows... > CDF27nnn where "nnn" is ETC, PGM, etc. (you may have to specify the full pathname of the self-extracting LHA file if it is not in the current directory). This will cause one or more files (and possibly new directories) to be created in your current directory. You may install the CDF distribution in any directory you wish although it would probably be a good idea to create a new directory in which to install the CDF distribution. The contents of each self-extracting LHA file are as follows... CDF27ETC.EXE Documentation, online help files, etc. All CDF installations should extract the contents of this file. A directory named .\HELP will be created. CDF27BN1.EXE Toolkit executables (binaries). If you plan to CDF27BN2.EXE install the CDF source code and compile/link the entire distribution, you don't need to extract the executables from these files. They will be created when you make the distribution. If you don't plan to extract the source code, extract the executables in these files. A directory named .\BIN will be created. CDF27PGM.EXE Libraries and include files used by applications. If you are going to extract the source code and make the distribution yourself, this file is not needed. If not, extract the libraries and include files from this file. Directories named .\LIB and .\INCLUDE will be created. The .\LIB directory will contain only one library: LIBCDFBO.LIB (from Borland 3.0). As stated before, we are having problems with Microsoft 6.00 and 7.00 compilers, so LIBCDFM6.LIB (from Microsoft 6.00), and LIBCDFM7.LIB (from Microsoft 7.00) are not included. You should rename LIBCDFBO.LIB to LIBCDF.LIB. The .\LIB directory will also contain one dynamic- link library (DLL): LIBCDFBO.DLL (from Borland 3.0). Similarly, you should rename it to LIBCDF.DLL. Each library has been built using the LARGE memory model (the library must be built with either the LARGE or HUGE memory model). If you require the HUGE memory model, rebuild the distribution following the steps below (the toolkit programs do not have to be rebuilt). Each library is also compiled to use the emulator library if a math coprocessor is not present at run- time (with /FPi for Microsoft and -f for Borland). If a math coprocessor will always be present at run- time, you may want to rebuild the distribution using a more efficient option. Rebuilding the distribution is described below. The Borland CDF library has been compiled using the overlay qualifier. Any application source files to be linked with the Borland CDF library must also be compiled/linked with the proper overlay qualifer. CDF27SAM.EXE Sample CDFs, skeleton tables, and application source code. If extracted, a directory named .\SAMPLES will be created. CDF27UG.EXE The CDF User's Guide (CDF27UG.PS). CDF27CRM.EXE The CDF C Reference Manual (CDF27CRM.PS). CDF27FRM.EXE The CDF Fortran Reference Manual (CDF27FRM.PS). CDF27SRC.EXE Source code for use with Borland C and Microsoft C/Fortran. This is only needed if you are going to compile/link the distribution with your own compiler. When CDF27SRC.EXE is executed, a directory named SRC is created containing the following directories... INCLUDE LIB TEST TOOLS CURSES The contents of these directories are discussed below. These self-extracting LHA files are distributed via anonymous FTP or on one or more floppy disks. Each disk should contain this README file in addition to one or more of the self-extracting LHA files. You can install the parts of the CDF distribution you need in any order you wish. ******************************************************************************* * Skip the following section if you do not need to rebuild the entire CDF * * distribution. * ******************************************************************************* If you need to rebuild the CDF distribution, perform the following steps. All of these steps require your current directory to be set to the top-level CDF directory (the directory containing the SRC subdirectory). 1. A number of parameters used to configure the CDF distribution are located in the include file `config.h'. These should be modified (if desired) before rebuilding the CDF distribution [`config.h' is located in the `src\include' directory]. These default parameters affect a number of actions taken by the CDF library and toolkit programs in various situations (the comments in `config.h' describe these default parameters). 2. Makefiles are provided with the source code (with extensions of .BO and .MS for Borland C and Microsoft C/Fortran respectively). If you are using a different compiler, new makefiles must first be created (using the existing makefiles as templates). Then compiler/link the entire distribution using the "make" utility provided with your compiler. (If "make" does not exist, you will have to use an alternative method to compile/link the distribution.) Examples follow... make -fmakefile.bo -DBCLOC= all (Borland C) nmake /F makefile.ms all (Microsoft C) If a Fortran compiler is not available (when using Microsoft C), use `all.noF' instead of `all'. For Borland C, is the full pathname of the top-level directory of your Borland C compiler installation. If you are building the distribution with the HUGE memory model, you will first have to edit the makefiles in SRC\LIB, SRC\TEST, SRC\TOOLS, and SRC\CURSES to indicate `H'/`h' rather than `L'/`l' for the macro named `MODEL'. You can also build just a part of the distribution by setting your current directory to the appropriate source subdirectory (eg. SRC\LIB to only rebuild the CDF library). NOTE: Depending on how your IBM PC is configured, you may have problems executing `make' from the top-level CDF directory (which would build the entire CDF distribution). Nested calls to `make' from within `make' may cause memory to be exhausted. If so, you will have to execute `make' while in each of the subdirectories. `Make' the target `all' while in the subdirectories SRC\LIB, SRC\CURSES, SRC\TOOLS, and SRC\TESTS (in that order). 3. Test that the distribution has been built correctly with the following... make -fmakefile.bo test (Borland C) nmake /F makefile.ms test (Microsoft C) ...or whatever is appropriate for the compiler you are using. The name of each test executed will be displayed. No other messages will be displayed unless an error occurs. 4. Install the library(s), include files, and toolkit programs with the following... make -fmakefile.bo install (Borland C) nmake /F makefile.ms install (Microsoft C) ...or whatever is appropriate for the compiler you are using. This will cause the directories named .\LIB, .\INCLUDE, and .\BIN to be created (and files from SRC\... to be copied into them). 5. Delete the library(s), object files, and executables in SRC\... with the following... make -fmakefile.bo clean (Borland C) nmake /F makefile.ms clean (Microsoft C) This will free approximately 5 megabytes of disk space. You can also delete the entire SRC\... directory tree if you have no further need for the source code. This will free approximately 3 megabytes of additional disk space. ******************************************************************************* * If you did not rebuild the distribution, continue reading here... * ******************************************************************************* Whether you built the distribution from the source code or simply extracted the library, include files, and toolkit executables, you should now have three directories containing the following files... .\INCLUDE CDF.H (Include file for C applications). CDF.INC (Include file for Fortran applications). CDFMSF.INC (Special include file for Microsoft Fortran applications). .\LIB LIBCDF.LIB (Assuming you renamed one of the supplied libraries) LIBCDF.DLL (Assuming you renamed one of the dynamic-link libraries). .\BIN CDFWALK.EXE (CDFwalk) CDFLIST.EXE (CDFlist) CDFEDIT.EXE (CDFedit) CDFXP.EXE (CDFexport) CDFCVT.EXE (CDFconvert) CDFCMP.EXE (CDFcompare) CDFSTATS.EXE (CDFstats) CDFINQ.EXE (CDFinquire CDF2SKT.EXE (SkeletonTable) SKT2CDF.EXE (SkeletonCDF) CDFDIR.BAT (CDFdir The name used in the CDF User's Guide for each toolkit program is shown in parenthesis. You may want to setup aliases for the toolkit programs (if you have that capability) to match the names used in the CDF User's Guide. The default qualifiers for the CDF toolkit programs are contained in an include file named `config.h'. Each of these default qualifiers can be overridden at the command line when a toolkit program is executed. If you want different default qualifiers you must rebuild the distribution as desribed above (after modifying `config.h'). You should also set an environment variable named CDF_HELP to the full pathname of the .\HELP directory. That will allow the toolkit programs to locate their online help files.