Requirements
- cygwin including gcc, make, etc
NOTE: cygwin's link.exe application must be renamed, so that VC's link will be used for the build.
renamed cygwin's link.exe to link_cyg.exe:
http://root.cern.ch/root/roottalk/roottalk06/1448.html
- Python installation (currently 2.5.1 as of March 2008)
- While ROOT binaries are not distributed with this version of Python, we have doubled-checked that this is ok:
http://root.cern.ch/phpBB2/viewtopic.php?t=4359
- While ROOT binaries are not distributed with this version of Python, we have doubled-checked that this is ok:
Optional
- FFTW (currently 3.1.2 available from http://www.fftw.org/install/windows.html)
- libxml2.6.15.win32 available from Planet Mirror
- gccxml available from http://www.gccxml.org/HTML/Index.html
Setting up
Once you have the ROOT source
From the a DOS prompt, set path to "" (set PATH=) and run vsvars32.bat located with the VS2003 installation. Next update the following environment variables:
- ROOTSYS to point to the root directory containing the source code
- added Python to the path as well as %ROOTSYS%/lib and %ROOTSYS%/bin.
- Updated the LIB env variable to include %ROOTSYS\lib
- For release build set ROOTBUILD=opt, for debug set to debug
- Note for debug, we may want to be sure the /MDd flag is set, it should be once ROOTBUILD is set to debug (should check that this is equivalent to setting --build=debug in configure)
- Set PYTHONDIR to the top level python directory
- set PYTHONPATH to %ROOTSYS%\bin
- set XMLDIR to point to the xml installation
Start cygwin via the command line: bash --login -i
At the cygwin prompt, changed directories to the %ROOTSYS% directory.
Configuration
Before calling make, we must run configure. It is often helpful to consider the configuration utilized in the ROOT distribution for the various platforms.
At this time, we at least require: xrootd, minuit2, python
Start cygwin via the command line: bash --login -i
At the cygwin prompt, changed directories to the %ROOTSYS% dir and then ran configure:
./configure win32 --enable-roofit --enable-minuit2 --enable-table --enable-python --disable-odbc --enable-gdml --enable-unuran --enable-xrootd --enable-reflex --enable-cintex --with-fftw3-incdir=C:/heather/root5.18b/fftw-3.1.2-dll --with-fftw3-libdir=C:/heather/root5.18b/fftw-3.1.2-dll --with-gccxml=C:/heather/root5.18b/gcc_xml --with-xml-incdir=C:/heather/root5.18b/libxml2-2.6.15.win32/include --with-xml-libdir=C:/heather/root5.18b/libxml2-2.6.15.win32/lib --with-python-libdir=C:/Python25/libs --with-python-incdir=C:/Python25/include --enable-mathmore --enable-mathcore --with-gsl-incdir=C:/heather/root5.18b/GSL/include --with-gsl-libdir=C:/heather/root5.18b/GSL/lib
Run make
make
make cintdlls (which seems to do nothing)
make map (also seems to do nothing)
make install