Changeset 978 in Sophya for trunk/SophyaLib/Manual
- Timestamp:
- Apr 28, 2000, 10:58:49 AM (25 years ago)
- Location:
- trunk/SophyaLib/Manual
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/SophyaLib/Manual/defsophya.sty
r974 r978 26 26 \newcommand{\bul}{$\bullet \ $} 27 27 28 29 % ---------- Commande pour la mise en forme de la page de titre ---------------- 30 31 % L'entete de page de titre 32 \newcommand{\titrehp}[1] 33 { 34 \vspace{1cm} 35 \makebox[30mm][c]{\includegraphics[width=3cm]{hfi_icon_vsmall.eps}} 36 \hspace{5mm} \raisebox{12mm}{\rule{85 mm}{0.5 mm}\makebox[40 mm]{\bf Sophya }} 37 \vspace{2cm} 38 \begin{center} 39 % \par \renewcommand{\baselinestretch}{2.0} \small 40 {\LARGE \bf #1} 41 \end{center} 42 } 43 44 \newcommand{\auteurs}[1] 45 { 46 \vspace{3 cm} 47 \begin{center} 48 \begin{tabular}{ll} 49 #1 50 \end{tabular} 51 \end{center} 52 } 53 54 \newcommand{\auteursall} 55 { 56 \vspace{3 cm} 57 \begin{center} 58 \begin{tabular}{ll} 59 R. Ansari & ansari@lal.in2p3.fr \\ 60 E. Aubourg & aubourg@hep.saclay.cea.fr \\ 61 G. Le Meur & lemeur@lal.in2p3.fr \\ 62 E. Lesquoy & lesquoy@hep.saclay.cea.fr \\ 63 C. Magneville & cmv@hep.saclay.cea.fr \\ 64 S. Versille & versille@lal.in2p3.fr \\ 65 F. Touze & touze@lal.in2p3.fr 66 \end{tabular} 67 \end{center} 68 } 69 70 % Bas de page de titre 71 \newcommand{\titrebp}[1] 72 { 73 \vfill 74 \hfill 75 \framebox[\textwidth]{\hspace{0.5cm} \bf Sophya Note #1 76 \hspace{1cm} \today } \\ 77 } 78 79 80 81 % Definition de taille de page 82 \setlength{\textwidth}{16cm} 83 \setlength{\textheight}{21.5cm} 84 \setlength{\topmargin}{0.5cm} 85 \setlength{\oddsidemargin}{0.cm} 86 \setlength{\evensidemargin}{0.cm} 87 \setlength{\unitlength}{1mm} -
trunk/SophyaLib/Manual/sophya.tex
r974 r978 6 6 \usepackage{graphicx} 7 7 % package a mettre pour faire du pdf 8 %\usepackage{palatino}8 \usepackage{palatino} 9 9 10 10 % Extension de symboles mathematiques … … 13 13 \usepackage{defsophya} 14 14 15 % Definition de taille de page16 \setlength{\textwidth}{16cm}17 \setlength{\textheight}{21.5cm}18 \setlength{\topmargin}{0.5cm}19 \setlength{\oddsidemargin}{0.cm}20 \setlength{\evensidemargin}{0.cm}21 \setlength{\unitlength}{1mm}22 15 23 16 … … 25 18 26 19 \begin{titlepage} 27 \vspace{1cm} 28 \makebox[30mm][c]{\includegraphics[width=3cm]{hfi_icon_vsmall.eps}} 29 \hspace{5mm} \raisebox{12mm}{\rule{75 mm}{0.5 mm}\makebox[50 mm]{\bf Sophya }} 30 \vspace{2cm} 31 \begin{center} 32 \par \renewcommand{\baselinestretch}{2.0} \small 33 {\LARGE \bf 34 Sophya \\ 35 An overview 20 \titrehp{Sophya \\ An overview } 21 \auteurs{ 22 R. Ansari & ansari@lal.in2p3.fr \\ 23 G. Le Meur & lemeur@lal.in2p3.fr \\ 24 C. Magneville & cmv@hep.saclay.cea.fr \\ 25 S. Versille & versille@lal.in2p3.fr 36 26 } 37 \par \renewcommand{\baselinestretch}{1.0} \normalsize 38 \vspace{5 cm} 39 \begin{tabular}{ll} 40 {R. Ansari} & {\tt ansari@lal.in2p3.fr} \\ 41 % {. Lesquoy} & {\tt lesquoy@hep.saclay.cea.fr} \\ 42 {G. Le Meur} & {\tt lemeur@lal.in2p3.fr} \\ 43 {C. Magneville} & {\tt cmv@hep.saclay.cea.fr} \\ 44 \end{tabular} 45 46 \end{center} 47 \vfill 48 \hfill 49 \framebox[\textwidth]{\hspace{0.5cm} \bf Sophya 50 \hspace{1cm} \today } \\ 27 % \auteursall 28 \titrebp{2} 51 29 \end{titlepage} 52 30 … … 54 32 55 33 \newpage 56 57 34 58 35 \section{Introduction} … … 69 46 with the specific goal of providing the general framework for 70 47 the Planck-HFI data processing software. However, most of the 71 packages presented are independent of Planck andCMB analysis72 problem.48 packages presented here have a more general scope than the CMB analysis 49 and Planck surveyor mission problem. 73 50 The source directory tree 74 51 \footnote{ CVS server: cvsserver.lal.in2p3.fr:/projects/Eros/CVSEros} … … 90 67 \end{itemize} 91 68 92 Modules designed for problems related to CMB analysis : 93 69 The modules listed below are more tightly related to the 70 CMB (Cosmic Microwave Background) data analysis problem: 94 71 \begin{itemize} 95 72 \item[] {\bf SkyMap/} Local and full sky maps … … 101 78 \end{itemize} 102 79 103 Modules containing interface classes with external libraries: 80 The following modules contain the interface classes with 81 external libraries: 104 82 \begin{itemize} 105 83 \item[] {\bf FitsIOSrever/} Classes for handling file input-output … … 123 101 \end{itemize} 124 102 125 \section{Mgr/ module and software installation} 103 \section{Using Sophya} 104 Two environment variables {\bf DPCBASEREP} and {\bf EROSCXX} are used 105 to define the path where the Sophya libraries and executable are installed. 106 {\bf DPCBASEREP} defines the base directory path and {\bf EROSCXX} the 107 name of the C++ compiler. The complete path is built using {\bf DPCBASEREP}, 108 the operating system name (as obtained by the {\tt uname} command), and 109 the compiler name. In the example below, we show the complete path 110 for a {\tt Linux} system, using the GNU g++ compiler: 111 112 \begin{itemize} 113 \item \$DPCBASEREP/Include : Include (.h) files 114 \item \$DPCBASEREP/Linux-g++/Libs : Path for the archive libraries (.a) 115 \item \$DPCBASEREP/Linux-g++/ShLibs : Shared library path (.so) 116 \item \$DPCBASEREP/Linux-g++/Exec : Executable file path 117 \end{itemize} 118 119 In order to use the shared libraries, the {\bf LD\_LIBRARY\_PATH} variable 120 should contain the Sophya shared library path 121 ({\tt \$DPCBASEREP/Linux-g++/ShLibs } when using g++ compiler on Linux) 122 123 The file {\tt \$DPCBASEREP/Include/MakefileUser.h} defines the compilation 124 flag and the list of Sophya libraries. It should be included in the 125 user's makefile. The default compilation rules assumes that the object (.o) 126 and executable files would be put in the following diretories: \\ 127 {\tt \$HOME/`uname`-\$EROSCXX/Objs} \\ 128 {\tt \$HOME/`uname`-\$EROSCXX/Exec}. 129 In the case of a {\tt Linux} system and using {\tt g++} as the C++ compiler, 130 these two directories would be translated to \\ 131 {\tt \$HOME/Linux-g++/Objs} and {\tt \$HOME/Linux-g++/Exec}. 132 The GNU make program should be used. 133 \par 134 The file {\tt \$DPCBASEREP/Include/makefile\_auto} defines the rules to compile 135 a given source program, and link it against the Sophya libraries to produce 136 an executable. The example below shows the steps to compile a program named 137 {\tt trivial.cc }. 138 \begin{verbatim} 139 csh> cp $DPCBASEREP/Include/makefile_auto makefile 140 csh> make trivial 141 \end{verbatim} 142 This command should compile the {\tt trivial.cc} file, producing 143 {\tt \$HOME/`uname`-\$EROSCXX/Objs/trivial.o} and link it against the sophya 144 libraries to produce {\tt \$HOME/`uname`-\$EROSCXX/Exec/trivial}. 145 \par 146 The file {\tt \$DPCBASEREP/Include/makefile\_example} provides another 147 example makefile. 148 149 150 \section{Building and installing Sophya} 151 Presently, the Sophya library compilation has been tested with the following 152 compiler/platform pairs: 153 154 \begin{center} 155 \begin{tabular}{ll} 156 Compaq/DEC OSF1 & cxx (6.0 , 6.2) \\ 157 Linux & g++ (2.91 , 2.95) \\ 158 Linux & KCC (3.4) \\ 159 Solaris & g++ (2.95) \\ 160 SGI IRIX64 & CC \\ 161 \end{tabular} 162 \end{center} 163 164 Some of the modules in the Sophya package uses external libraries. The 165 {\bf FitsIOServer} is the example of such a module, where the {\tt libcfitsio.a} 166 is used. 167 The build procedure expects to find the include files and the libraries in: \\ 168 {\tt \$EXTLIBDIR/Include/FitsIO } \\ 169 {\tt \$EXTLIBDIR/`uname`-\$EROSCXX/Libs} \\ 170 171 The object files from a given Sophya module are grouped in an archive library 172 with the module's name ({\tt libmodulename.a}). All Sophya modules 173 are grouped in a single shared library ({\tt libsophya.so}), while the 174 modules with reference to external libraries are grouped in 175 ({\tt libextsophya.so}). The {\bf PI} and {\bf PIext} modules are 176 grouped in ({\tt libPI.so}). 177 178 The environment variables {\bf DPCDEVREP}, {\bf EXTLIBDIR} and {\bf EROSCXX} 179 must be defined in order to install the Sophya package. 180 In the example below, we assume that we want to install Sophya from a 181 released (tagged) version in the source directory {\tt \$SRC} in the 182 {\tt /usr/local/Sophya} diretory, using {\tt g++}. We assume that 183 the external libraries directory tree has been set up in 184 {\tt /usr/local/ExtLibs/}. \\[3mm] 185 \centerline{\bf \large the use of GNU make is mandatory.} 186 \vspace*{3mm} 187 \begin{verbatim} 188 # We select our C++ compiler 189 csh> setenv EROSCXX g++ 190 # Setup the build directory 191 csh> mkdir /usr/local/Sophya/ 192 csh> setenv DPCDEVREP /usr/local/Sophya/ 193 csh> setenv EXTLIBDIR /usr/local/ExtLibs/ 194 # Use the top level makefile in Mgr/ 195 csh> cd $SRC 196 csh> cp Mgr/Makefile Makefile 197 # Step 1: Create the directory tree and copy the include files (.h) 198 csh> make depend 199 # Step 2: Compile the modules without external library reference 200 csh> make libs 201 # Step 3: Compile the modules WITH external library reference (optional) 202 csh> make extlibs 203 # Step 4: Build libsophya.so 204 csh> make slb 205 # Step 5: Build libextsophya.so (optional) 206 csh> make slbext 207 # Step 6: Compile the PI and PIext modules (optional) 208 csh> make PI 209 # Step 7: Build the corresponding shared library libPI.so (optional) 210 csh> make slbpi 211 \end{verbatim} 212 213 To compile all modules and build the shared libraries, it is possible 214 to use: 215 \begin{verbatim} 216 # Step 2,3,6 217 csh> make all 218 # Step 4,5,7 219 csh> make slb 220 \end{verbatim} 221 222 At this step, all libraries sould have been made. Programs using 223 Sophya libraries can now be built: 224 \begin{verbatim} 225 # To compile test programs 226 csh> cd Tests 227 csh> make arrt ... 228 csh> cd .. 229 # To compile other programs, for example from the PMixer module 230 csh> cd PMixer 231 csh> make 232 csh> cd .. 233 # To build (s)piapp (libPI.so is needed) 234 csh> cd ProgPI 235 csh> make 236 csh> cd .. 237 \end{verbatim} 238 239 \section{Mgr/ module} 240 This module contains scripts which can be used for ge 126 241 blabla ... 127 242
Note:
See TracChangeset
for help on using the changeset viewer.