The capabilities provided by psLib are grouped into the following areas which are also reflected in the file system directory structure:
The capabilities provided by psModuke are grouped into the following areas which are also reflected in the file system directory structure:
This list is sorted in hierarchical order: The later entries depend on the functions and data types of the earlier entries.
The installed code for psLib consists of header files and binary libraries in the form of static and/or shared library, depending on the configuration options. To assist in using the library, a script "pslib-config" is supplied that provides the compiler and linker options.
Though not required to build the base library, several 3rd party software libraries are needed for particular functionality.
We recommend using the particular versions listed as compatibility tested, as that is the only versions tested to work well with psLib. Though it is quite possible that later versions of the libraries listed will also work as well, care must be taken when upgrading these libraries to verify that its functionality is compatible with the tested version.
https://mhpcc.pan-starrs.org/code/releases
If one has a login account on mhpcc.pan-starrs.org, direct CVS access is also possible. Example of the commands required for direct CVS retrieval are as follows:
$ cvs -d:ext:USERNAME@mhpcc.pan-starrs.org:/data/panstarrs/cvsroot co -r RELEASEBRANCH psLibwhere:
$ cd psLib $ ./autogen.shThis creates the required configure script and Makefile templates.
The recommended steps to build the library are:
$ cd psLib $ ./configure $ make $ make check $ make installThis builds, tests, and installs the library.
The configure step allows users to specify specific locations for the third party libraries (see "3rd Party Libraries" for a list), disabling of select functionality (e.g., database and perl module), installation location, etc. An enumeration of the options for configure, and the default values, can be obtained via "./configure --help".
Though 'make check' compiles and runs the test suite, one can also use custom scripts to run all the tests and just a particular test. To run the unit test suite, do the following:
$ cd psLib/test $ ./FullUnitTest
This has the advantage over 'make check' in that it does not stop when a test fails and it collects some very basic statistics on the results. To run a particular test, do the following:
$ runTest testfilename
$ make install
The required CFLAG options for the compiler stage of code that uses psLib can be obtained via 'pslib-config --cflags'. This outputs the cc options that supplies include path(s) required to find the psLib headers.
The required linking options, can be obtained via 'pslib-config --libs'. This outputs the ld options that supplies the library paths and files required to link to the pslib library.
Note: pslib-config usage above refers to the install locations of the library. To link to the library directly in the build area, you need to use 'pslib-config --build-cflags' and 'pslib-config --build-libs' instead. These options will modify the output to point to the non-installed (build) locations of the include files and libraries. (this feature is experimental)
$ cd psLib $ make docsThis places documentation in PREFIX/docs/psLib, where PREFIX is set using the configure script.
Also, a prebuilt set of code documentation for releases and can be found at:
https://mhpcc.pan-starrs.org/docs/