These are notes both for the person doing the packing of the routines for transfer and for the person doing the unpacking on the other side.
Much of this could be a bit more automated, but to keep the setup process as clear as possible, it has not been automated...
SRL's current root directory of its data system is
setenv BASE_DIR /home/idunn1/rgr/prototype/"root" for the data system is an arbitrary choice. This directory will be referred to as ${BASE_DIR}.
These three sub directories should be created (if they have not already been created for the data retrieval package):
mkdir ${BASE_DIR}/data mkdir ${BASE_DIR}/lib mkdir ${BASE_DIR}/src
mkdir ${BASE_DIR}/data/cris mkdir ${BASE_DIR}/data/sisThese are good locations in which the data can be archived. If you place your archive data files here, you will be defining the environment variables which the put and get libraries require as:
setenv L1_CRIS_DATA_BASE_DIRECTORY ${BASE_DIR}/data/cris setenv L1_SIS_DATA_BASE_DIRECTORY ${BASE_DIR}/data/sis
Create these directories:
mkdir ${BASE_DIR}/src/include mkdir ${BASE_DIR}/src/libOr, in all,
setenv BASE_DIR /home/idunn1/rgr/prototype/ mkdir ${BASE_DIR}/data mkdir ${BASE_DIR}/lib mkdir ${BASE_DIR}/src mkdir ${BASE_DIR}/data/cris mkdir ${BASE_DIR}/data/sis mkdir ${BASE_DIR}/src/include mkdir ${BASE_DIR}/src/lib
setenv BASE_DIR /home/idunn1/rgr/prototype cd ${BASE_DIR}/src/lib makeSrcArchives.pl crisPutData crisSisPutUtilities sisPutData utilities [Enter new version ID] [Enter] putDataLibs [follow ftp instructions to place files on web server] cd ${BASE_DIR}/src/include makeSrcArchives.pl cris sis prototype FileTypes.h PrimaryHeader.h cris.h sis.h hdfi.h [Enter new version ID] [Enter] crisSisDataHeaders [follow ftp instructions to place files on web server]
After setting up the directory structure as directed above, move the library distribution into ${BASE_DIR}/src/lib and move the includes distribution into ${BASE_DIR}/src/include and then unpack them (something like the following:)
setenv BASE_DIR /home/darkalf/bruce/test mv crisSisDataHeaders-1.00.tar.gz ${BASE_DIR}/src/include mv putDataLibs-1.00.tar.gz ${BASE_DIR}/src/lib cd ${BASE_DIR}/src/include gunzip crisSisDataHeaders-1.00.tar.gz tar xvf crisSisDataHeaders-1.00.tar gzip crisSisDataHeaders-1.00.tar cd ${BASE_DIR}/src/lib gunzip putDataLibs-1.00.tar.gz tar xvf putDataLibs-1.00.tar gzip putDataLibs-1.00.tarThere will be a similar set of commands for installing the source and header files on a PC. But you will be dealing with the .zip files and using unzip instead of gunzip and tar.A
If you are curious about what the whole directory structure should look like at this point, here is my recursive listing.
Always run make in crisSisPutUtilities before those in crisPutData or sisPutData, as object files are created in crisSisPutUtilities and moved into crisPutData and sisPutData for incorporation into their respective libraries.
cd ${BASE_DIR}/src/lib/utilities vi Makefile make cd ${BASE_DIR}/src/lib/crisSisPutUtilities vi Makefile make cd ${BASE_DIR}/src/lib/crisPutData vi Makefile make cd ${BASE_DIR}/src/lib/sisPutData vi Makefile makeIf the 4 makes worked, then your libraries should be ready to go. Look in the lib directory: ${BASE_DIR}/lib and you should see:
libCrisPutData.a libSisPutData.a libUtilities.aUse these libraries as you would any other c library. See the sample Makefile.
The include files corresponding to the library contents will be in ${BASE_DIR}/src/include:
crisPutData.h crisSisPutUtilities.h sisPutData.h utilities.h
Also, some of the routines may need to be rewritten, dependent on how good a POSIX compiler can be found. If there is a GNU C compiler for PCs, I highly recommend it's use here.
Another note is that the header file hdfi.h which is a part of the distribution of HDF is required to be in the directory ${BASE_DIR}/src/include. The version of hdfi.h that is included with this distribution is probably unix specific.
bruce