9/13/17 Notes on packaging up GAAS to give to others. For me: I took Baselibs-4_0_6 from my Mac, and GAAS is tagged prc+gaas-1_5_b2+v2 You need two packages to run the OMI simulator. - GMAO Baselibs - GAAS package (which has VLIDORT and the codes coupling to the model output) I am no expert on installing these things, and my mileage varies depending on what kind of system I am trying to compile on. So I will try to tell you what I think works for me and we'll go from there. In principle you should be able to set this up and run it on either a Linux box or a Mac. Preamble Before you get started you need a C compiler, a Fortran compiler, and a Python distribution. My only experience really is with a particular configuration of these tool, specifically on my Linux system I currently have: - gcc-5.4.0 (C/C++ compiler, preprocesser, and related tools) - ifort 15.0.2.164 (Fortran compiler) - EDM (python package from here: https://www.enthought.com/products/edm/ and you need to install a lot of components; you might try with your system python first, but there are special needs for GAAS that will have to be filled in) First thing to do once these tools are set up is to install a version of openmpi on your system that respects this compiler environment. I use openmpi-1.8.4 (https://www.open-mpi.org/software/ompi/v1.8/). I don't know why newer versions would not work. I can provide some guidance on installing this stuff and setting up your environment, but I don't have it all written down and so rather than spending my time on this now I'll just leave it here and see what you want/need. Baselibs Now find some space to install the GMAO baselibs package. In principle, with your environment configured for gcc and ifort and openmpi in your PATH you just go into "src" and do "make all". In practice I do this differently. I open the GNUmakefile in a text editor and do it all by hand. Look for this line: ALLDIRS = jpeg zlib szlib curl hdf4 hdf5 h5edit netcdf netcdf-fortran udunits2 nco cdo esmf hdfeos uuid cmor hdfeos5 SDPToolkit What I do is, at the command line and in the order above, this: % make jpeg.config % make jpeg.install % make zlib.config % make zlib.intall % ... And this helps me see if there are problems. I think what is strictly needed is this group: jpeg zlib szlib curl hdf4 hdf5 netcdf netcdf-fortran esmf Try to do them all and tell me what problems you have. Above the "src" directory when you build you will see a directory that reflects your system environment that gets created. On my system the directory has a name like: "x86_64-unknown-linux-gnu" and under that is a directory says something about the compiler environment proper: "ifort_15.0.2.164-openmpi_1.8.4" (it might be something like "ifort"). You need to set an environment variable like this before proceeding: % setenv BASEDIR /ford1/share/gmao_SIteam/Baselibs/GMAO-Baselibs-4_0_6/x86_64-unknown-linux-gnu/ifort_15.0.2.164-openmpi_1.8.4/ with of course your path and directory names. I add this to my .cshrc file so it is always set. GAAS Now find some place to install GAAS. Up till now you haven't needed python, but that is important at this step, so be sure your python is in your path and your PYTHONPATH environment variable is set to point to your distribution library. Then: % cd GAAS % setenv ESMADIR `pwd` {sets the ESMADIR environment to point to the GAAS top level directory, where everything is built relative to} % cd src % make install |& tee make.log {last bit captures the build log to a file, useful to diagnose problems} and once complete you can check like this: % ./Config/gmh.pl -v make.log and look at output. If no errors you should be good to go! VLIDORT is in GAAS in src/Components/RTSI/VLIDORT90 The OMI calculator code is in src/Components/scat/example