Changeset 3584
- Timestamp:
- Mar 30, 2005, 4:29:34 PM (21 years ago)
- File:
-
- 1 edited
-
trunk/psLib/src/mainpage.dox (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psLib/src/mainpage.dox
r3041 r3584 25 25 26 26 The installed code for psLib consists of header files and binary libraries in 27 the form of static (libpslib.a) and shared (libpslib.so or libpslib.dylib, 28 depending on operating system.) Assuming these components have been built and 29 installed in the standard library path, psLib may be used within a program by 30 including the line #include <pslib.h> and linking using the '-lpslib' option 31 while linking. 27 the form of static and/or shared library, depending on the configuration options. 28 To assist in using the library, a script "pslib-config" is supplied that 29 provides the compiler and linker options. 32 30 33 31 34 @section extinstall Required3rd Party Libraries32 @section extinstall 3rd Party Libraries 35 33 36 34 Before building psLib from source, several 3rd party software libraries must … … 38 36 - GNU Scientific Library (GSL) 39 37 - Available at http://www.gnu.org/software/gsl 40 - Compatibility tested with version is1.438 - Compatibility tested with version 1.4 41 39 - Fastest Fourier Transform in the West (FFTW), version 3, with single-precison float support 42 40 - Available at http://www.fftw.org … … 45 43 - C Flexible Image Transport System Input output (CFITSIO), version 2.480 or later 46 44 - Available at http://heasarc.gsfc.nasa.gov/docs/software/fitsio 47 - Compatibility tested with version is 2.490 48 - Versions earlier than 2.480 will not work as new functionality introduced in 2.480 is exercised 49 - Doxygen Documentation System 50 - Available at http://www.doxygen.org 51 - Compatibility tested with version 1.3.6 52 - The optional companion package, GraphViz (a.k.a., the 'dot' command), is recommended to enable header-file dependency diagrams 53 - SLALIB 54 - Available at http://star-www.rl.ac.uk/ 55 - Compatibility tested with package version number 2.4-12 56 - We tested with the Fortran version of the library; this may cause an additional step to get things to link on untested systems/compilers, as there is no one standard for how the function-names appear in the library to C code. The default way that psLib uses is all-lower case with a trailing '_', but one may need to add to CFLAGS in src/Makefile.Globals the following: 57 - '-DFORTRAN_UNDERSCORE_PREFIX' if a '_' needs to be prefixed to the function names, 58 - '-DFORTRAN_DOUBLE_UNDERSCORE_SUFFIX' if two the names needs two trailing '_'s., and/or 59 - '-DFORTRAN_UPPERCASE' if the names appear as uppercase. 45 - Compatibility tested with version 2.490, requires at least 2.480 60 46 - Gnome XML C parser and toolkit (libxml2) 61 47 - Available at http://www.xmlsoft.org 62 - Compatibility tested with version 2-2.6.16-3 48 - Compatibility tested with version 2.6.12 and 2.6.16 49 50 Though not required to build the base library, several 3rd party software 51 libraries are needed for particular functionality. 52 - Doxygen Documentation System 53 - Required for creation of documentation 54 - Available at http://www.doxygen.org 55 - Compatibility tested with version 1.3.2 and 1.3.8 56 - The optional companion package, GraphViz (a.k.a., the 'dot' command), is recommended to enable header-file dependency diagrams 57 - MySQL 58 - Required for database functionality 59 - Available at http://dev.mysql.com 60 - Compatibility tested with version 4.1.10a, requires at least 4.1.2 61 - A server running locally is required for testing. 62 - Autoconf/Automake 63 - Required only if making from CVS 64 - Available at http://www.gnu.org/software/autoconf and http://www.gnu.org/software/automake 65 - Compatibility tested with version 2.59 (autoconf) and 1.9.2 (automake) 63 66 64 67 We recommend using the particular versions listed as compatibility tested, as … … 68 71 functionality is compatible with the tested version. 69 72 70 @section install How to Build from Source 73 74 @section obtain How to Obtain the Source 71 75 72 76 Tested versions of psLib are put into a tar file and can be downloaded from: … … 75 79 76 80 Though MHPCC recommends using the released packaged tar files descibed above, 77 both daily development snapshots and direct CVS access is available. The daily78 snapshots are available at 81 both recent daily development snapshots and direct CVS access is available. 82 The recent daily snapshots are available at: 79 83 80 84 https://mhpcc.pan-starrs.org/code/snapshots … … 94 98 where: 95 99 - USERNAME is your login name on the server 96 - RELEASEBRANCH is the desired release branch, e.g. rel 1, rel2, rel3, or rel4.100 - RELEASEBRANCH is the desired release branch, e.g. rel5. 97 101 98 102 99 @section build How to Build the psLib library103 @section build How to Build and Test the psLib library 100 104 105 The source uses autoconf/automake to build control the build process. If, and 106 only if, the source came from CVS or a CVS snapshot, the configuration script 107 will have to be made via: 108 <pre> 109 $ cd psLib 110 $ make -f Makefile.cvs 111 </pre> 112 <i>This creates the configure script and Makefile templates.</i> 101 113 102 The source should build using the Makefile in the psLib/src directory. The 103 recommended steps are: 114 The recommended steps to build the library are: 104 115 <pre> 105 $ cd psLib/src 116 $ cd psLib 117 $ ./configure 106 118 $ make 119 $ make check 107 120 $ make install 108 121 </pre> 109 <i>This builds and installs files to psLib/lib and psLib/include.</i>122 <i>This builds, tests, and installs the library.</i> 110 123 111 The make system of psLib allows users to specify specific locations for some of the 112 third party libraries (see "Required 3rd Party Libraries" for a list). If 113 a location is not specified, the cooresponding library is assumed to be in 114 the standard library paths, e.g., /usr or /usr/local. The following are the 115 environment variables that can be set before the make process above to force 116 the location of the third-party libraries: 117 - sladir: Location of SLALIB 118 - e.g., <pre>export sladir=/usr/local/star</pre> 119 - xml2config: Location of the xml2-config configuration executable 120 - e.g., <pre>export xml2config=/usr/bin/xml2-config</pre> 124 The configure step allows users to specify specific locations for the third 125 party libraries (see "3rd Party Libraries" for a list), disabling of select 126 functionality (e.g., database and perl module), installation location, etc. 127 An enumeration of the options for configure, and the default values, can be 128 obtained via "./configure --help". 121 129 122 Also, the installation location of the library can be set using environment 123 variables. The following are the supported variables for installation: 124 - prefix: the installation prefix (default: current psLib directory) 125 - e.g., <pre>export prefix=/usr/local</pre> 126 - mandir: The man page installation location (default: $prefix/man) 127 - includedir: The installation location for the header files (default: $prefix/include) 128 - testbindir: Location for the test executables (default: $prefix/testbin) 129 - libexecdir: Location for the library files (default: $prefix/lib) 130 - TIME_CONFIG_FILE: Location of the 'psTime.config' configuration file (default: $(prefix)/config/psTime.config) 131 132 @section run How to Build and Run Tests 133 134 Since psLib is a library, there is no executable, per se. However, to test the 135 installation, users may execute the unit test suite. To build the unit test 130 Though 'make check' compiles and runs the test suite, one can also use custom 131 scripts to run all the tests and just a particular test. To run the unit test 136 132 suite, do the following: 137 133 <pre> 138 134 $ cd psLib/test 139 $ make140 $ make install141 </pre>142 <i>This builds and installs the unit test files to the psLib/testbin directory.</i>143 144 To run the unit test suite, do the following:145 <pre>146 $ cd psLib/testbin147 135 $ ./FullUnitTest 148 136 </pre> 149 or to run a particular test 137 138 This has the advantage over 'make check' in that it does not stop when a test 139 fails and it collects some very basic statistics on the results. To run a 140 particular test, do the following: 150 141 <pre> 151 $ ./runTest testfilename142 $ runTest testfilename 152 143 </pre> 153 154 Note: one can also fun the FullUnitTest from anywhere within psLib/test155 without performing the above 'make installtests' command first. To do this,156 one needs to first set the PSLIB_ROOT environment variable to the top psLib157 directory 'psLib'. FullUnitTest will search for tests in the subdirectories158 the the execution directory, perform a build of them (via 'make'), and run them.159 This can be useful if one wants to tweak the test code and doesn't desire to160 perform an install of all the tests each time the test file is touched.161 144 162 145 … … 166 149 documentation embedded in the code using the following commands: 167 150 <pre> 168 $ cd psLib /src151 $ cd psLib 169 152 $ make docs 170 153 </pre> 171 <i>This places documentation in psLib/docs.</i> 154 <i>This places documentation in PREFIX/docs/psLib, where PREFIX is set using 155 the configure script.</i> 172 156 173 157 Also, a prebuilt set of code documentation for both the releases and last
Note:
See TracChangeset
for help on using the changeset viewer.
