fixed: auto_ptr -> unique_ptr
[opensg.git] / Support / ReadMe.txt
blob0cedb5873d3581580786d855ba4422fd017c8490
2 How to build and work with the support packages:
4 1) Download:
6  1a) Boost
8   If you don't have the need to modify the visual studio security c****
9   or need a 64bit version you might download the prebuild packages from
10   boost consulting instead. 
12   Otherwise download:
14 http://sourceforge.net/projects/boost/files/boost/1.44.0/boost_1_44_0.zip/download
15 #http://nchc.dl.sourceforge.net/sourceforge/boost/boost_1_37_0.tar.gz
17 http://sourceforge.net/projects/boost/files/boost-jam/3.1.18/boost-jam-3.1.18-1-ntx86.zip/download
18 #http://nchc.dl.sourceforge.net/sourceforge/boost/boost-jam-3.1.17-1-ntx86.zip
20 build 
22   a) dll + static lib + dll runtime + opt + dbg + 32 bit + vc9
24 ..\bjam.exe -d+2 --stagedir=./stage --without-mpi toolset=msvc-9.0 variant=debug,release threading=multi link=shared,static runtime-link=shared address-model=32 stage
27   a-s) dll + static lib + static runtime + opt + dbg + 32 bit + vc9
29 ..\bjam.exe -d+2 --stagedir=./stage --without-mpi toolset=msvc-9.0 variant=debug,release threading=multi link=static runtime-link=static address-model=32 stage
33   b) dll + static lib + dll runtime + opt + dbg + 32 bit + vc9 + no ms secure c****
35 ..\bjam.exe -d+2 --stagedir=./stage --without-mpi toolset=msvc-9.0 variant=debug,release threading=multi link=shared,static runtime-link=shared address-model=32 define=_CRT_SECURE_NO_DEPRECATE define=_CRT_SECURE_NO_WARNINGS define=_CRT_NONSTDC_NO_DEPRECATE define=_SECURE_SCL=0 define=_SCL_SECURE_NO_WARNINGS define=_SCL_SECURE_NO_DEPRECATE define=_HAS_ITERATOR_DEBUGGING=0 stage
38   b-s) dll + static lib + static runtime + opt + dbg + 32 bit + vc9 + no ms secure c****
40 ..\bjam.exe -d+2 --stagedir=./stage --without-mpi toolset=msvc-9.0 variant=debug,release threading=multi link=static runtime-link=static address-model=32 define=_CRT_SECURE_NO_DEPRECATE define=_CRT_SECURE_NO_WARNINGS define=_CRT_NONSTDC_NO_DEPRECATE define=_SECURE_SCL=0 define=_SCL_SECURE_NO_WARNINGS define=_SCL_SECURE_NO_DEPRECATE define=_HAS_ITERATOR_DEBUGGING=0 stage
44   c) dll + static lib + dll runtime + opt + dbg + 32 bit + vc10
46 ..\bjam.exe -d+2 --stagedir=./stage --without-mpi toolset=msvc-10.0 variant=debug,release threading=multi link=shared,static runtime-link=shared address-model=32 stage
49   c-s) dll + static lib + static runtime + opt + dbg + 32 bit + vc10
51 ..\bjam.exe -d+2 --stagedir=./stage --without-mpi toolset=msvc-10.0 variant=debug,release threading=multi link=static runtime-link=static address-model=32 stage
56   d) dll + static lib + dll runtime + opt + dbg + 32 bit + vc10 + no ms secure c****
58 ..\bjam.exe -d+2 --stagedir=./stage --without-mpi toolset=msvc-10.0 variant=debug,release threading=multi link=shared,static runtime-link=shared address-model=32 define=_CRT_SECURE_NO_DEPRECATE define=_CRT_SECURE_NO_WARNINGS define=_CRT_NONSTDC_NO_DEPRECATE define=_SECURE_SCL=0 define=_SCL_SECURE_NO_WARNINGS define=_SCL_SECURE_NO_DEPRECATE define=_HAS_ITERATOR_DEBUGGING=0 stage
61   d-s) dll + static lib + static runtime + opt + dbg + 32 bit + vc10 + no ms secure c****
63 ..\bjam.exe -d+2 --stagedir=./stage --without-mpi toolset=msvc-10.0 variant=debug,release threading=multi link=static runtime-link=static address-model=32 define=_CRT_SECURE_NO_DEPRECATE define=_CRT_SECURE_NO_WARNINGS define=_CRT_NONSTDC_NO_DEPRECATE define=_SECURE_SCL=0 define=_SCL_SECURE_NO_WARNINGS define=_SCL_SECURE_NO_DEPRECATE define=_HAS_ITERATOR_DEBUGGING=0 stage
67   e) dll + static lib + dll runtime + opt + dbg + 64 bit + vc9
69 ..\bjam.exe -d+2 --stagedir=./stage --without-mpi toolset=msvc-9.0 variant=debug,release threading=multi link=shared,static runtime-link=shared address-model=64 stage
72   e-s) dll + static lib + static runtime + opt + dbg + 64 bit + vc9
74 ..\bjam.exe -d+2 --stagedir=./stage --without-mpi toolset=msvc-9.0 variant=debug,release threading=multi link=static runtime-link=static address-model=64 stage
79   f) dll + static lib + dll runtime + opt + dbg + 64 bit + vc9 + no ms secure c****
81 ..\bjam.exe -d+2 --stagedir=./stage --without-mpi toolset=msvc-9.0 variant=debug,release threading=multi link=shared,static runtime-link=shared address-model=64 define=_CRT_SECURE_NO_DEPRECATE define=_CRT_SECURE_NO_WARNINGS define=_CRT_NONSTDC_NO_DEPRECATE define=_SECURE_SCL=0 define=_SCL_SECURE_NO_WARNINGS define=_SCL_SECURE_NO_DEPRECATE define=_HAS_ITERATOR_DEBUGGING=0 stage
84   f-s) dll + static lib + static runtime + opt + dbg + 64 bit + vc9 + no ms secure c****
86 ..\bjam.exe -d+2 --stagedir=./stage --without-mpi toolset=msvc-9.0 variant=debug,release threading=multi link=static runtime-link=static address-model=64 define=_CRT_SECURE_NO_DEPRECATE define=_CRT_SECURE_NO_WARNINGS define=_CRT_NONSTDC_NO_DEPRECATE define=_SECURE_SCL=0 define=_SCL_SECURE_NO_WARNINGS define=_SCL_SECURE_NO_DEPRECATE define=_HAS_ITERATOR_DEBUGGING=0 stage
90   g) dll + static lib + dll runtime + opt + dbg + 64 bit + vc10
92 ..\bjam.exe -d+2 --stagedir=./stage --without-mpi toolset=msvc-10.0 variant=debug,release threading=multi link=shared,static runtime-link=shared address-model=64 stage
95   g-s) dll + static lib + static runtime + opt + dbg + 64 bit + vc10
97 ..\bjam.exe -d+2 --stagedir=./stage --without-mpi toolset=msvc-10.0 variant=debug,release threading=multi link=static runtime-link=static address-model=64 stage
101   h) dll + static lib + dll runtime + opt + dbg + 64 bit + vc10 + no ms secure c****
103 ..\bjam.exe -d+2 --stagedir=./stage --without-mpi toolset=msvc-10.0 variant=debug,release threading=multi link=shared,static runtime-link=shared address-model=64 define=_CRT_SECURE_NO_DEPRECATE define=_CRT_SECURE_NO_WARNINGS define=_CRT_NONSTDC_NO_DEPRECATE define=_SECURE_SCL=0 define=_SCL_SECURE_NO_WARNINGS define=_SCL_SECURE_NO_DEPRECATE define=_HAS_ITERATOR_DEBUGGING=0 stage
106   h-s) dll + static lib + static runtime + opt + dbg + 64 bit + vc10 + no ms secure c****
108 ..\bjam.exe -d+2 --stagedir=./stage --without-mpi toolset=msvc-10.0 variant=debug,release threading=multi link=static runtime-link=static address-model=64 define=_CRT_SECURE_NO_DEPRECATE define=_CRT_SECURE_NO_WARNINGS define=_CRT_NONSTDC_NO_DEPRECATE define=_SECURE_SCL=0 define=_SCL_SECURE_NO_WARNINGS define=_SCL_SECURE_NO_DEPRECATE define=_HAS_ITERATOR_DEBUGGING=0 stage
109   
111 Please note that you need different source/build directories for the 32 bit, 64 bit,
112 scecurity and non security versions, as the standards cmake find boost module
113 only seems to work with the single 'stage' dir.
115  1b) Qt
117 Download
119 http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.6.4.tar.gz
121 Build
123  a) dll + opt + debug + vc9
125 configure -opensource -platform win32-msvc2008 -nomake examples -nomake demos -nomake docs -debug-and-release -mmx -sse -sse2 -plugin-sql-sqlite -no-dbus -no-phonon -no-phonon-backend -no-webkit -no-scripttools
127  b) dll + opt + debug + vc9 + no ms secure c****
129 configure -opensource -platform win32-msvc2008 -nomake examples -nomake demos -nomake docs -debug-and-release -mmx -sse -sse2 -plugin-sql-sqlite -no-dbus -no-phonon -no-phonon-backend -no-webkit -no-scripttools -D _CRT_SECURE_NO_DEPRECATE -D _CRT_SECURE_NO_WARNINGS -D _CRT_NONSTDC_NO_DEPRECATE -D _SECURE_SCL=0 -D _SCL_SECURE_NO_WARNINGS -D _SCL_SECURE_NO_DEPRECATE -D _HAS_ITERATOR_DEBUGGING=0
131  c)  dll + opt + debug + vc10
133 configure -opensource -platform win32-msvc2010 -nomake examples -nomake demos -nomake docs -debug-and-release -mmx -sse -sse2 -plugin-sql-sqlite -no-dbus -no-phonon -no-phonon-backend -no-webkit -no-scripttools
135  d) dll + opt + debug + vc10 + no ms secure c****
137 configure -opensource -platform win32-msvc2010 -nomake examples -nomake demos -nomake docs -debug-and-release -mmx -sse -sse2 -plugin-sql-sqlite -no-dbus -no-phonon -no-phonon-backend -no-webkit -no-scripttools -D _CRT_SECURE_NO_DEPRECATE -D _CRT_SECURE_NO_WARNINGS -D _CRT_NONSTDC_NO_DEPRECATE -D _SECURE_SCL=0 -D _SCL_SECURE_NO_WARNINGS -D _SCL_SECURE_NO_DEPRECATE -D _HAS_ITERATOR_DEBUGGING=0
139  1c) VTK
141  1b) Rest
143 http://sourceforge.net/projects/libpng/files/zlib/1.2.5/zlib125.zip/download
144 #http://sourceforge.net/projects/libpng/files/zlib/1.2.5/zlib-1.2.5.tar.gz/download
146 http://sourceforge.net/projects/libpng/files/libpng15/1.5.4/lpng154.zip/download
147 #http://sourceforge.net/projects/libpng/files/libpng15/1.5.4/libpng-1.5.4.tar.gz/download
149 http://sourceforge.net/projects/libjpeg/files/libjpeg/6b/jpegsr6.zip/download
150 #http://sourceforge.net/projects/libjpeg/files/libjpeg/6b/jpegsrc.v6b.tar.gz/download
151 http://download.osgeo.org/libtiff/tiff-3.8.2.zip
152 #ftp://ftp.remotesensing.org/pub/libtiff/tiff-3.8.2.zip
154  http://prdownloads.sourceforge.net/freeglut/freeglut-2.8.0.tar.gz?download
156  or
158  http://www.xmission.com/~nate/glut/glut-3.7.6-src.zip
160 http://sourceforge.net/projects/collada-dom/files/Collada%20DOM/Collada%20DOM%202.4/collada-dom-2.4.0-libsrc.tgz/download
161 ftp://xmlsoft.org/libxml2/libxml2-2.7.8.tar.gz
162 http://sourceforge.net/projects/pcre/files/pcre/8.12/pcre-8.12.zip/download
163 #http://sourceforge.net/projects/pcre/files/pcre/8.12/pcre-8.12.tar.gz/download
165 http://download.savannah.nongnu.org/releases/openexr/openexr-1.7.0.tar.gz
166 http://download.savannah.nongnu.org/releases/openexr/ilmbase-1.0.2.tar.gz
168 http://sourceforge.net/projects/expat/files/expat/2.0.1/expat-2.0.1.tar.gz/download
169 http://download.osgeo.org/gdal/gdal180.zip
170 http://sourceforge.net/projects/glew/files/glew/1.7.0/glew-1.7.0.zip/download
171 #http://sourceforge.net/projects/glew/files/glew/1.6.0/glew-1.6.0.tgz/download
172 http://cudpp.googlecode.com/files/cudpp_src_1.1.zip
173 http://stereofx.org/download/mini/MINI-9.8.zip
174 http://files.na.mcneel.com/opennurbs/5.0/2011-11-22/opennurbs_20111122.zip
176 2) Unpack to disk
178 3) Point OSGFreeGlutSrcDir, OSGJpegLibSrcDir, OSGLibPNGSrcDir, 
179    OSGTiffLibSrcDir, OSGZLibSrcDir, OSGColladaSrcDir, OSGPcreSrcDir,
180    OSGLibXml2SrcDir, ....., and OSGLibIconvSrcDir to the appropriate directories, e.g.
182    OSGFreeGlutSrcDir:PATH=X:/..../OpenSG-Support/Unpack/freeglut-2.6.0
183    OSGJpegLibSrcDir:PATH=X:/..../OpenSG-Support/Unpack/jpeg-6b
184    OSGLibPNGSrcDir:PATH=X:/....//OpenSG-Support/Unpack/libpng-1.2.37
185    OSGTiffLibSrcDir:PATH=X:/..../OpenSG-Support/Unpack/tiff-3.8.2
186    OSGZLibSrcDir:PATH=X:/..../OpenSG-Support/Unpack/zlib-1.2.3-source
187    OSGColladaSrcDir:PATH=X:/..../OpenSG-Support/Unpack/collada-dom
188    OSGPcreSrcDir:PATH=X:/..../OpenSG-Support/Unpack/pcre-7.9
189    OSGLibXml2SrcDir:PATH=X:/..../OpenSG-Unpack/libxml2-2.7.3
190    OSGLibIconvSrcDir:PATH=X:/..../OpenSG-Support/Unpack/libiconv-1.12-source
191    .
192    .
193    .
195 4) Build + Install
197 5) Configure OpenSG.
199   5a) activate OSG_USE_OSGSUPPORT_LIBS
201     set OSG_SUPPORT_ROOT the where you installed the support libs, e.g.
203     OSG_SUPPORT_ROOT:PATH=X:/..../OpenSG-Support/install
205     choose to use dlls / static libs according to what you build or prefer
207     OSG_USE_STATIC_SUPPORT_LIBS:BOOL=OFF
209     Please make sure to use the same boost libs and _SECURE settings as for
210     the support libs. This is currently neither checked/enforced nor
211     automatically transferred.
213   5b) set by hand
215   5a is strongly recommended !
217 6) Doxygen
219   As we use some custom doxygen extensions building the documentation works
220   best with the customized doxygen version. For linux check out revision 752
221   to the disk and setup the OSGDoxygenSrcDir to point to it.
223   svn checkout -r 752 https://doxygen.svn.sourceforge.net/svnroot/doxygen/trunk doxygen
225   After the build and install steps the custom binary should be picked up by the 
226   main OpenSG cmake script.
229 Finally a small word of caution. The packages are build to work with OpenSG,
230 there might not be as general as possible. For example some of the internal package
231 headers are not installed (libxml2, iconv, pcre) as the are not directly
232 included by OpenSG. If you need them let us know.
235 Support Package <-> OpenSG Feature dependencies:
236 ================================================
238 1) must haves, without them OpenSG itself won't build:
240  -) boost
241  -) zlib
243 2) File formats:
245  -) Collada SceneFileType
246       collada-dom, libiconv, libxml2, pcre 
248  -) Tiff ImageFileType
249       tiff
250   
251  -) PNG ImageFileType
252       libpng
254  -) JPG ImageFileType
255       libjpeg
257  -) GDAL ImageFileType
258       gdal, expat
260  -) OpenEXR ImageFileType
261       OpenEXR
263 3) Window types
265  -) GLUTWindow
266       freeglut
268  -) QTWindow
269       qt
271 4) Rest
273  -) Source/Contrib/VTK
274       vtk
276  -) Source/Contrib/Compute
277       cudpp
279  -) Easy testing
280       glew
282 have fun
283   gerrit