8659
Comment:
|
9279
|
Deletions are marked like this. | Additions are marked like this. |
Line 64: | Line 64: |
:: open a Visual Studio 2008 Command Prompt, cd c:\tiff-3.8.2-1-lib | :: open a Visual Studio 2008 Command Prompt, cd c:\jpeg-6b-4-lib\lib |
Line 101: | Line 101: |
* '''''FTGL''''' :: Download ftgl-2.1.3-rc5.tar.gz from http://sourceforge.net/projects/ftgl/. :: Download freetype-2.3.5-1-bin.zip from http://gnuwin32.sourceforge.net/packages/freetype.htm. :: set ENABLE_FTGL :: set FTGL_INCLUDE_PATH to C:/ftgl-2.1.3~rc5/src :: set FTGL_LIBRARY to C:/Download/ftgl-2.1.3-rc5/ftgl-2.1.3~rc5/msvc/build/ftgl_static_D.lib. :: In "Advance view" mode, set ENABLE_STATIC_FTGL :: set FREETYPE_INCLUDE_PATH to C:/freetype-2.3.5-1-bin/include. :: set FREETYPE_LIBRARY to C:/freetype-2.3.5-1-bin/lib/freetype.lib. |
|
Line 127: | Line 136: |
* '''''glut dynamic library''''' :: download glut-3.7.6-bin.zip from http://www.xmission.com/~nate/glut.html. :: unzip glut-3.7.6-bin.zip to C:\glut-3.7.6-bin. :: copy C:\glut-3.7.6-bin\glut32.dll to C:\EMAN2\lib directory. |
|
Line 132: | Line 137: |
:: Download PyQt-Py2.5-gpl-4.4.2-1.exe from http://www.riverbankcomputing.com/software/pyqt/download. Click and install. | :: Download PyQt-Py2.6-gpl-4.7.3-2.exe from http://www.riverbankcomputing.com/software/pyqt/download. Click and install. * '''''matplotlib''''' :: Download matplotlib-0.99.3.win32-py2.6.exe from http://matplotlib.sourceforge.net/, click and install. '''6. Set up environment varaibles''' :: set EMAN2DIR to C:\EMAN2 :: set PATH to C:\EMAN2\bin;C:\EMAN2\lib :: set PYTHONPATH to C:\EMAN2\lib |
Compiling EMAN2 on Windows
1. Use cmake to generate Visual Studio 2008 solution:
Download cmake windows installer cmake-2.8.1-win32-x86.exe from http://www.cmake.org/HTML/index.html.
- run cmake, select build solution for "visual c++ 9.0", fill the EMAN2 source directory to "Where is the source code", and specify a directory to "Where to build the binaries".
- click configure button, then OK. You will get error dialog. Then follow the next item to solve all dependency libraries.
2. The dependent libraries for EMAN2 building:
- Note: I suppose all packages are installed on C: drive. You can adjust it according to your actual path.
Python
Download python-2.6.5.msi from http://www.python.org, run it to install.
- set PYTHON_INLCUDE_PATH to C:/Python26/include
- set PYTHON_LIBRARY to C:/Python26/libs/python26.lib
Numpy
Download numpy-1.4.1-win32-superpack-python2.6.exe from http://numpy.scipy.org, run it to install.
- set NUMPY_INCLUDE_PATH to C:/Python26/Lib/site-packages/numpy/core/include
Boost.python
Download boost_1_43_0.zip and boost-jam-3.1.18-1-ntx86.zip from http://www.boost.org/users/download/.
- unzip boost-jam-3.1.18-1-ntx86.zip, you will get a executable file bjam.exe, put this file in your PATH(make sure you can execute it in a console window).
- unzip boost_1_43_0.zip.
- open a Visual Studio 2008 Command Prompt, cd C:\boost_1_43_0
- run bootstrap.bat
- bjam --with-python toolset=msvc link=shared threading=multi runtime-link=shared
- set the BOOST_INCLUDE_PATH to C:/boost_1_43_0/include
- set the BOOST_LIBRARY to C:/boost_1_43_0/bin.v2/libs/python/build/msvc-9.0/release/threading-multi/boost_python-vc80-mt-1_43.lib
HDF5
Download hdf5-1.8.4-patch1-win32-vs2008-ivf101-enc.zip from ftp://ftp.hdfgroup.org/HDF5/current/bin/windows/.
- unzip hdf5-1.8.4-patch1-win32-vs2008-ivf101-enc.zip, get a folder hdf5lib.
- set the HDF5_INCLUDE_PATH to C:/hdf5lib/include.
- set the HDF5_LIBRARY to C:/hdf5lib/dll/hdf5dll.lib.
FFTW3
Download precompiled fftw3.1.2 windows dlls fftw-3.2.2.pl1-dll32.zip from http://www.fftw.org/install/windows.html.
- unzip fftw-3.2.2.pl1-dll32.zip.
- open a Visual Studio 2008 Command Prompt, cd c:\fftw-3.2.2.pl1-dll32.
follow the instruction from http://www.fftw.org/install/windows.html, run these commands:
lib.exe /machine:i386 /def:libfftw3f-3.def
- set FFTW3_INCLUDE_PATH to C:/fftw-3.2.2.pl1-dll32.
- set FFTW3_LIBRARY to C:/fftw-3.2.2.pl1-dll32/libfftw3f-3.lib
GSL
Download gsl-1.13-windows-binaries.zip from http://david.geldreich.free.fr/dev.html
- unzip gsl-1.13-windows-binaries.zip to C:\gsl.
- set GSL_INCLUDE_PATH to C:/gsl/include.
- set GSL_CBLAS_INCLUDE_PATH to C:/gsl/include.
- set GSL_LIBRARY to C:/gsl/lib/gsl.lib.
- set GSL_CBLAS_LIBRARY to C:/gsl/lib/cblas.lib.
libtiff
Download tiff-3.8.2-1-lib.zip from http://gnuwin32.sourceforge.net/packages/tiff.htm, click the zip link close to "Developer files".
- unzip tiff-3.8.2-1-lib.zip. In C drive, create directory include and lib.
- open a Visual Studio 2008 Command Prompt, cd c:\tiff-3.8.2-1-lib
- Run this commands:
lib.exe /machine:i386 /def:libtiff.def
- copy header files in C:\tiff-3.8.2-1-lib\include to C:\include, copy C:\tiff-3.8.2-1-lib\libtiff.lib to C:\lib.
- set TIFF_INCLUDE_PATH to C:/include.
- set TIFF_LIBRARY to C:/lib/libtiff.lib.
download binary tiff-3.8.2-1-bin.zip from http://gnuwin32.sourceforge.net/packages/tiff.htm. Save the libtiff3.dll for runtime use.
libjpeg
Download jpeg-6b-4-lib.zip from http://gnuwin32.sourceforge.net/packages/jpeg.htm, click the zip link close to "Developer files".
- unzip jpeg-6b-4-lib.zip to to C:\jpeg-6b-4-lib.
- open a Visual Studio 2008 Command Prompt, cd c:\jpeg-6b-4-lib\lib
- Run this commands:
lib.exe /machine:i386 /def:jpeg.def
- copy header files in C:\jpeg-6b-4-lib/include to C:\include, copy C:/jpeg-6b-4-lib/lib/jpeg.lib to C:\lib.
- set JPEG_INCLUDE_PATH to C:/include.
- set JPEG_LIBRARY to C:/lib/jpeg.lib.
download binary jpeg-6b-4-bin.zip from http://gnuwin32.sourceforge.net/packages/jpeg.htm. Save the jpeg62.dll for runtime use.
libpng
Download libpng-1.2.37-lib.zip from http://gnuwin32.sourceforge.net/packages/libpng.htm, click the zip link close to "Developer files".
- unzip libpng-1.2.37-lib.zip to C:\libpng-1.2.37-lib.
- open a Visual Studio 2008 Command Prompt, cd c:\tiff-3.8.2-1-lib
- Run this commands:
lib.exe /machine:i386 /def:libpng12.def
- copy header files in C:/libpng-1.2.37-lib/include to C:\include, copy C:/libpng-1.2.37-lib/lib/libpng.lib to C:\lib.
- set PNG_INCLUDE_PATH to C:/include.
- set PNG_LIBRARY to C:/lib/libpng.lib.
download binary libpng-1.2.37-bin.zip from http://gnuwin32.sourceforge.net/packages/libpng.htm. Save the libpng12.dll for runtime use.
zlib
Download zlib-1.2.3-win32-vs2008.zip from ftp://ftp.hdfgroup.org/lib-external/zlib/1.2/bin/windows/.
- unzip zlib-1.2.3-win32-vs2008.zip to C:\zlib.
- copy header files in C:\zlib\include to C:\include, copy zlib1.lib and zlib1.dll from C:\zlib\dll to C:\lib.
- set ZLIB_LIBRARY to C:/lib/zlib1.lib.
szlib
Download szip-2.1-win32-vs2008-enc.zip from ftp://ftp.hdfgroup.org/lib-external/szip/2.1/bin/windows/.
- unzip szip-2.1-win32-vs2008-enc.zip to C:\szip.
- copy header files in C:\szip\include to c:\include, copy C:\szip\lib\szlib.lib to C:\lib.
- set SZLIB_LIBRARY to C:/lib/szlib.lib.
OpenGL
Download glext.h from http://oss.sgi.com/projects/ogl-sample/ABI/glext.h into C:/Program Files/Microsoft SDKs/Windows/v6.0A/Include/GL.
- set GLU_INCLUDE_PATH to C:/Program Files/Microsoft SDKs/Windows/v6.0A/Include.
- set GLU_LIBRARY to C:/Program Files/Microsoft SDKs/Windows/v6.0A/Lib/GlU32.Lib.
- set GL_INCLUDE_PATH to C:/Program Files/Microsoft SDKs/Windows/v6.0A/Include.
- set GL_LIBRARY to C:/Program Files/Microsoft SDKs/Windows/v6.0A/Lib/OpenGL32.Lib.
FTGL
Download ftgl-2.1.3-rc5.tar.gz from http://sourceforge.net/projects/ftgl/.
Download freetype-2.3.5-1-bin.zip from http://gnuwin32.sourceforge.net/packages/freetype.htm.
- set ENABLE_FTGL
- set FTGL_INCLUDE_PATH to C:/ftgl-2.1.3~rc5/src
- set FTGL_LIBRARY to C:/Download/ftgl-2.1.3-rc5/ftgl-2.1.3~rc5/msvc/build/ftgl_static_D.lib.
- In "Advance view" mode, set ENABLE_STATIC_FTGL
- set FREETYPE_INCLUDE_PATH to C:/freetype-2.3.5-1-bin/include.
- set FREETYPE_LIBRARY to C:/freetype-2.3.5-1-bin/lib/freetype.lib.
3. Actions before build:
- In cmake configuration page, you need change the CMAKE_CONFIGURATION_TYPES to Release.
If you did not configure the build type to Release in cmake. In the Visual Studio 2005 menu, choose build -> configuration manager. Set the "Active Solution Configureation" to release. Then check the INSTALL and test in the check boxes.
- right click the "Solution 'EMAN2'" inthe left "Solution Explorer" pane, then choose "Build Solution". If you see all 27 projects build succeeded. Then you got a successfull EMAN2 build.
4. After compilation
- We need copy the runtime libraries into EMAN2/lib directory.
- boost_python-vc90-mt-1_43.dll
- hdf5.dll
- libfftw3f-3.dll
- szip.dll
- zlib1.dll
- jpeg62.dll, duplicate it to jpeg.dll
- libtiff3.dll, change the name to libtiff.dll
- libpng12.dll
5. Install runtime libraries
IPython
Download ipython-0.10.win32-setup.exe from http://ipython.scipy.org/dist/. Click and install.
Download pyreadline-1.5-win32-setup.exe from http://ipython.scipy.org/dist/. Click and install. This package is for proper color support in IPython shell.
PyOpenGL
To install PyOpenGL, we need install setuptools first. Download setuptools-0.6c11.win32-py2.6.exe from http://pypi.python.org/pypi/setuptools#downloads. Click and install.
Download PyOpenGL-3.0.0b2.zip from http://sourceforge.net/projects/pyopengl
- unzip PyOpenGL-3.0.1.zip to C:\PyOpenGL-3.0.1.
- Open a console window, cd C:\PyOpenGL-3.0.1, then type "python setup.py install".
Download PyQt-Py2.6-gpl-4.7.3-2.exe from http://www.riverbankcomputing.com/software/pyqt/download. Click and install.
matplotlib
Download matplotlib-0.99.3.win32-py2.6.exe from http://matplotlib.sourceforge.net/, click and install.
6. Set up environment varaibles
- set EMAN2DIR to C:\EMAN2
- set PATH to C:\EMAN2\bin;C:\EMAN2\lib
- set PYTHONPATH to C:\EMAN2\lib
After everything installed, type e2.py, if you see error message like, "The procedure entry point _Z7qstrcmpRK10QByteArrayS1_ could not be located in the dynamic link library QtCore4.dll.". That means you may have other Qt4 libraries installed. Remove them, just use the Qt4 libraries come with PyQt4 will solve this problem.