mknemo program(s)
Finding the method how to install program takes several paths:
First, if a file $NEMO/src/scripts/mknemo.d/program exists, it is assumed to be a shell script with directions how to install this program. gyrfalcON is an example of such a complex program. In this case program can also be a package name, in which case the script will be more complex.
Next, within the $NEMO/src (optionally also the $NEMO/usr tree) a source file program.c (or C++ or Fortran) is looked for, which is compiled with a local Makefile (or a template if none is available). tsf is an example of this type of program, but also more specialized plotting programs such as snapplot or orboom, which need an extra 3rd party library.
Finally, if still no source code is found, a directory with the name program is searched for, and a local Makefile is then used to install the program. hackcode1 is an example of this type of program.
Initially mknemo was nothing more than a convenience tool to build (new) binaries from your working directory, without having to remember where the source code lived... but since it has also acquired being a semi-package manager, it should be mentioned there are many other options to solve this problem.
-c CODE search for CODE.c to set the directory for target(s) -n N selection of N-th element from unresolved list [1] -s DIR root directory to start search [$NEMO/src] -r remove lockfile before starting -d also make doc file (only for true NEMO programs) -t cleanup after having made the binaries -T cleanup before making the binaries -u update your NEMO git tree before (re)making -l update the library before (re)making -L force recompile the library before (re)making -g use gmake, instead of make -a also search $NEMO/usr -v more verbose, it will report version and cvsid of program (deprecated) -D show special projects from the mknemo.d directory
heated_plate_openmp openmp cfitsio sdfits (no test data present in NEMO) fftw - gsl - hdf4 tsd (no test data present in NEMO) - hdf.h hdf5 orboom eaglesnap (but needs install in $NEMO/usr/eagle) miriad - pgplot via YAPP_PGPLOT plplot via YAPP_PLPLOT png via YAPP_PGPLOT yapp tabhistIf any of these fail for obvious reasons, you can try and fix them by rerunning configure and comparing $NEMOLIB/makedefs with $NEMO/makedefs, or simply editing $NEMOLIB/makedefs directly.
firstn the very first (?) nbody code glnemo2 glnemo graphics gyrfalcON falcON tools (gyrfalcON, mkplum, the acc’s and manip’s) rotcur rotcur program (there is also a confusing rotcur potential(5NEMO)) galaxy15 Sellwood’s GALAXY V15. cfitsio CFITSIO libraryFor a 3rd party library system type library, such as cfitsio, the sources will be under $NEMO/local, and being built with --prefix=$NEMO/opt.
$NEMO/src/scripts/mknemo.d directory with non-default control files for mknemo $NEMO/src/scripts/template NEMO program template generator $NEMO/src/scripts/mkman NEMO man page template generator $NEMOLIB/makedefs make variables $NEMOLIB/libnemo.a main NEMO library $NEMOLIB/yapp*.o various device drivers $NEMO/src source tree searched for programs/directories $NEMO/adm/install/mknemo.log logfile of all previous installs done $NEMO/adm/install/mknemo.lock lockfile, to prevent multiple usage $NEMO/local/<package> source of a <package> $NEMO/opt/{bin,include,lib} --prefix location of <package> binaries and headers for public use
21-jun-91 V1.0: doc created PJT 25-jun-91 V1.1: added lockfile PJT 4-apr-01 V1.3: added extension making for NEMO V3 PJT 20-jun-03 V1.4: added -u flag PJT 16-dec-03 V1.5: added -l flag, also cloned sbin/mkstarlab PJT 11-jun-04 V2.4: added -a flag PJT 11-apr-2019 V4.0: git based dec-2019 document critical binaries PJT jul-2020 added -L options, switch -L and -l meaning PJT