ManualBuild

From FarsightWiki
(Difference between revisions)
Jump to: navigation, search
(splitting up info on the HowToBuild page to make it shorter)
 
 
(44 intermediate revisions by 6 users not shown)
Line 9: Line 9:
  
 
# Go to Start->All Programs->Microsoft Visual Studio 2008->Visual Studio Tools->Visual Studio 2008 x64 Win64 Command Prompt
 
# Go to Start->All Programs->Microsoft Visual Studio 2008->Visual Studio Tools->Visual Studio 2008 x64 Win64 Command Prompt
# cd to the directory where you unzipped the QT source (Auto-complete key: tab) [[Image:changeDrive.jpg|center|frame|alt=alt text|Go to the QT root directory in the Visual Studio 2008 x64 Win64 command prompt.]]
+
# cd to the directory where you unzipped the QT source (Auto-complete key: tab) [[Image:changeDrive.jpg|center|frame|alt=alt text|Go to the QT root directory in the Visual Studio 2008 x64 Win64 command prompt. This image shows how to change drives.]]
 
# Run <tt>"configure -mp"</tt> (see figure below) <span style="color:blue">(This should take about 5 minutes or more. [http://slashdot.org/ Reading material as you wait.])</span> <center>[[Image:QTacceptlicense.jpg|Configure]] [[Image:QTconfiguredone2.jpg|Configuring done, now nmake]] [[Image: QTnmakefinish.jpg|The command prompt should look like this after nmake completes.]]</center>
 
# Run <tt>"configure -mp"</tt> (see figure below) <span style="color:blue">(This should take about 5 minutes or more. [http://slashdot.org/ Reading material as you wait.])</span> <center>[[Image:QTacceptlicense.jpg|Configure]] [[Image:QTconfiguredone2.jpg|Configuring done, now nmake]] [[Image: QTnmakefinish.jpg|The command prompt should look like this after nmake completes.]]</center>
 
# Run <tt>"nmake"</tt> <span style="color:blue">[http://en.wikipedia.org/wiki/Coffee Take a coffee break.]</span> This step will take at least 30 minutes.
 
# Run <tt>"nmake"</tt> <span style="color:blue">[http://en.wikipedia.org/wiki/Coffee Take a coffee break.]</span> This step will take at least 30 minutes.
Line 21: Line 21:
  
 
You '''do not''' need to compile it.
 
You '''do not''' need to compile it.
 
=== Download Git ===
 
 
# Download [[http://git-scm.com/ Git]]. [[Image:downloadGIT.jpg|center|frame|[http://git-scm.com/ Download Git]]]
 
# When it ask for "Adjusting your PATH environment: How would you like to use Git from the command line", select: <tt>Run Git from the Windows Command Prompt</tt>.
 
# When it ask for "Configuring the line ending conversions: How should Git treat line endings in text files", select: <tt>Checkout Windows-style, commit Unix-style line endings</tt>.
 
 
<center>[[Image:GITsetup.jpg|Make sure the 2nd option is selected.]][[Image:GITsetup2.jpg|Make sure the 1st option is selected.]]</center>
 
  
 
== Source Libraries Configuration ==
 
== Source Libraries Configuration ==
Line 34: Line 26:
 
=== Build VXL ===
 
=== Build VXL ===
  
# Download the latest stable release of VXL from [http://vxl.sourceforge.net/ Vision-something-Libraries]. [[Image:downloadVXL.jpg|center|frame|[http://vxl.sourceforge.net/ VXL download page]]]
+
Download VXL by going to: (Start -> Git Bash in search box). Then type the following lines:
# Unzip the file to C:\Lab.
+
 
 +
''cd /c/Lab/VXL/source''
 +
 +
''git clone git://git.code.sf.net/p/vxl/git vxl-git .''
 +
''git checkout d8aee93ce8bfc88765fff8ffe5c364d636be8a97''
 +
 
 
# Run CMake.
 
# Run CMake.
 
# Specify the source folder and binary folder.
 
# Specify the source folder and binary folder.
 
# <tt>Configure</tt>
 
# <tt>Configure</tt>
 
# Specify the generator for this project: <tt>Visual Studio 9 2008 Win64</tt>
 
# Specify the generator for this project: <tt>Visual Studio 9 2008 Win64</tt>
# (optional) For speed optimization in Visual Studio, append [[#Install_CMake|-MP<number of processors>]] to CMAKE_C_FLAGS and CMAKE_CXX_FLAGS as shown in the figure to the right. [[Image: CmakeVXLmulticore.jpg|right|thumb|Multicore building VXL]]
+
# (optional) For speed optimization in Visual Studio, append [[#Install_CMake|/MP]] to CMAKE_C_FLAGS and CMAKE_CXX_FLAGS as shown in the figure to the right. [[Image: CmakeVXLmulticore.jpg|right|thumb|Multicore building VXL]]
 
# Turn the following options <span style="color:red">OFF</span>:
 
# Turn the following options <span style="color:red">OFF</span>:
 
#*<span style="color:red">BUILD_BRL</span>
 
#*<span style="color:red">BUILD_BRL</span>
Line 53: Line 50:
 
# Turn the following options <span style="color:green">ON</span>:
 
# Turn the following options <span style="color:green">ON</span>:
 
#*<span style="color:green">BUILD_RPL_RGTL</span>
 
#*<span style="color:green">BUILD_RPL_RGTL</span>
 +
#*<span style="color:green">VNL_CONFIG_LEGACY_METHODS</span>
 
#*<span style="color:green">VXL_FORCE_V3P_PNG</span> (Mac ONLY)
 
#*<span style="color:green">VXL_FORCE_V3P_PNG</span> (Mac ONLY)
 
# Click <tt>configure</tt> and then turn the following option <span style="color:green">ON</span>:
 
# Click <tt>configure</tt> and then turn the following option <span style="color:green">ON</span>:
Line 64: Line 62:
 
#<tt>Build</tt>
 
#<tt>Build</tt>
 
# As you wait, [http://webdevrefinery.com/forums/topic/9459-funniest-programming-comics/ play some Starcraft 2.]
 
# As you wait, [http://webdevrefinery.com/forums/topic/9459-funniest-programming-comics/ play some Starcraft 2.]
 +
 +
=== Build VTK ===
 +
 +
Download VTK by going to: (Start -> Git Bash in search box). Then type the following lines:
 +
 +
''cd /c/Lab/VTK''
 +
''git clone git://vtk.org/VTK.git Source''
 +
''cd Source''
 +
''git checkout v5.10.1''
 +
 +
# Run CMake.
 +
# Specify the source folder and the binary folder.
 +
# <tt>Configure</tt>
 +
# Specify the generator for this project: <tt>Visual Studio 9 2008 Win64</tt>
 +
# (optional) For speed optimization in Visual Studio, append [[#Install_CMake|/MP]] to CMAKE_C_FLAGS and CMAKE_CXX_FLAGS as shown in the figure to the right. The git version may have a CMAKE_CXX_MP_FLAG, in which case just check that and add your number of processors to CMAKE_CXX_MP_NUM_PROCESSORS. [[Image: CMAKEVTK.jpg|right|thumb|Multicore building VTK]]
 +
# Turn <span style="color:red">OFF</span> the following options:
 +
#*<span style="color:red">BUILD_DOCUMENTATION</span>
 +
#*<span style="color:red">BUILD_EXAMPLES</span>
 +
#*<span style="color:red">BUILD_SHARED_LIBS</span>
 +
#*<span style="color:red">BUILD_TESTING</span>
 +
# Turn <span style="color:green">ON</span> the following options:
 +
#*<span style="color:green">VTK_USE_BOOST</span>
 +
#*<span style="color:green">VTK_USE_GUISUPPORT</span>
 +
#*<span style="color:green">VTK_USE_QT</span>
 +
# <tt>Configure</tt>
 +
# Turn <span style="color:green">ON</span> the following option:
 +
#*<span style="color:green">VTK_USE_QTCHARTS</span>
 +
#*Set <span style="color:green">Boost_INCLUDE_DIR</span> to the root of the Boost source tree.
 +
# Turn <span style="color:red">OFF</span> the following option:
 +
#*<span style="color:red">VTK_QT_USE_WEBKIT</span>
 +
# <tt>Configure</tt>
 +
#*An error may appear about QT_QMAKE_EXECUTABLE not being found. Simply provide the path to qmake.exe (should be <QT root directory>/bin/qmake.exe)
 +
# <tt>Generate</tt>
 +
# Go to the VTK binary folder and open the solution file ('''VTK.sln''').
 +
# Go to the file toolbar: Build->Batch Build  [[Image: batchbuildvxl.jpg|right|thumb|alt=alt text|Batch Build VTK]]
 +
# Turn ON the following options under ALL_BUILD:
 +
#*Debug|x64
 +
#*Release|x64
 +
#<tt>Build</tt>
 +
# As you wait, [http://xkcd.com/323/ take a nice long shower.]
  
 
=== Build ITKv4 ===
 
=== Build ITKv4 ===
Line 69: Line 107:
 
Download ITKv4 by going to: (Start -> Git Bash in search box). Then type the following lines:
 
Download ITKv4 by going to: (Start -> Git Bash in search box). Then type the following lines:
  
  ''cd /c/Lab''
+
  ''cd /c/Lab/ITK''
 
   
 
   
  ''git clone git://itk.org/ITK.git''
+
  ''git clone git://itk.org/ITK.git Source''
  ''cd ITK''
+
  ''cd Source''
  ''git checkout v4.0a09''
+
  ''git checkout v4.3.2''
''git submodule update''
+
  
 
[[File:downloadITK.jpg|center|ITK]]
 
[[File:downloadITK.jpg|center|ITK]]
 +
 +
  
 
# Run CMake.
 
# Run CMake.
Line 83: Line 122:
 
# Specify the generator for this project: <tt>Visual Studio 9 2008 Win64</tt>
 
# Specify the generator for this project: <tt>Visual Studio 9 2008 Win64</tt>
 
# An error will show up in the CMake log complaining about BUILD_TESTING being on.
 
# An error will show up in the CMake log complaining about BUILD_TESTING being on.
# (optional) For speed optimization in Visual Studio, append [[#Install_CMake|-MP<number of processors>]] to CMAKE_C_FLAGS and CMAKE_CXX_FLAGS as shown in the figure to the right. [[Image:ITKcmake.jpg|right|thumb|alt=alt text|Multicore building ITKv4. <span style="font-size:100%; color:red">Make sure you change the number according to the number of processors you have! (ie. /MP8)</span> ]]
+
# (optional) For speed optimization in Visual Studio, append [[#Install_CMake|/MP]] to CMAKE_C_FLAGS and CMAKE_CXX_FLAGS as shown in the figure to the right. [[Image:ITKcmake.jpg|right|thumb|alt=alt text|Multicore building ITKv4. <span style="font-size:100%; color:red">Make sure you change the number according to the number of processors you have! (ie. /MP8)</span> ]]
 
# Turn <span style="color:red">OFF</span> the following:
 
# Turn <span style="color:red">OFF</span> the following:
 
#*<span style="color:red">BUILD_TESTING</span>
 
#*<span style="color:red">BUILD_TESTING</span>
Line 92: Line 131:
 
#*<span style="color:green">ITK_USE_64BITS_IDS</span>
 
#*<span style="color:green">ITK_USE_64BITS_IDS</span>
 
#*<span style="color:green">ITK_USE_REVIEW</span>
 
#*<span style="color:green">ITK_USE_REVIEW</span>
#**'''Do NOT turn on ITK_USE_SYSTEM_VXL as documented in the old FARSIGHT_HowToBuild guide'''
+
#*<span style="color:green">ITK_USE_SYSTEM_VXL</span>
 +
#*<span style="color:green">Module_ITKVtkGlue</span>
 +
#**On the next <tt>Configure</tt> you will have to specify <span style="color:green">VTK_DIR</span> and <span style="color:green">VXL_DIR</span>.
 
# <tt>Configure</tt> again and then <tt>Generate</tt>
 
# <tt>Configure</tt> again and then <tt>Generate</tt>
 
# Go to the ITK binary folder and open the solution file ('''ITK.sln''').
 
# Go to the ITK binary folder and open the solution file ('''ITK.sln''').
Line 107: Line 148:
 
See [[FARSIGHT_Tutorials/Building_Software]] if you'd like to enable Python wrapping for ITK.
 
See [[FARSIGHT_Tutorials/Building_Software]] if you'd like to enable Python wrapping for ITK.
  
=== Build VTK ===
 
 
# Download the source code from the [http://vtk.org/VTK/resources/software.html VTK download page]
 
#*(Alternatively, you can access the latest development version of VTK using git.  This will allow you to use some additional Qt views in FARSIGHT, but the git version of VTK is less stable than the latest release.  Instructions on how to access the VTK git repository are on the same VTK download page linked above.)
 
#*<span style="font-size:150%; color:red">If you want to run TraceEditor, you MUST [[HowToBuild_VTK_nightly|build the VTK nightly via GIT]].</span> [[Image: downloadVTK.jpg|center|frame|[http://vtk.org/VTK/resources/software.html VTK download page]]].
 
# Create a VTK folder in C:\Lab and extract the VTK zip file into it.
 
# Run CMake.
 
# Specify the source folder and the binary folder.
 
# <tt>Configure</tt>
 
# Specify the generator for this project: <tt>Visual Studio 9 2008 Win64</tt>
 
# (optional) For speed optimization in Visual Studio, append [[#Install_CMake|-MP<number of processors>]] to CMAKE_C_FLAGS and CMAKE_CXX_FLAGS as shown in the figure to the right. The git version may have a CMAKE_CXX_MP_FLAG, in which case just check that and add your number of processors to CMAKE_CXX_MP_NUM_PROCESSORS. [[Image: CMAKEVTK.jpg|right|thumb|Multicore building VTK]]
 
# Turn <span style="color:red">OFF</span> the following options:
 
#*<span style="color:red">BUILD_DOCUMENTATION</span>
 
#*<span style="color:red">BUILD_EXAMPLES</span>
 
#*<span style="color:red">BUILD_SHARED_LIBS</span>
 
#*<span style="color:red">BUILD_TESTING</span>
 
# Turn <span style="color:green">ON</span> the following options:
 
#*<span style="color:green">VTK_USE_BOOST</span>
 
#*<span style="color:green">VTK_USE_GUISUPPORT</span>
 
#*<span style="color:green">VTK_USE_QT</span>
 
# <tt>Configure</tt>
 
# If you are '''building VTK nightly''' via GIT, turn <span style="color:green">ON</span> the following option:
 
#*<span style="color:green">VTK_USE_QTCHARTS
 
# <tt>Configure</tt>
 
#*An error may appear about QT_QMAKE_EXECUTABLE not being found. Simply provide the path to qmake.exe (should be <QT root directory>/bin/qmake.exe)
 
# <tt>Generate</tt>
 
# Go to the VTK binary folder and open the solution file ('''VTK.sln''').
 
# Go to the file toolbar: Build->Batch Build  [[Image: batchbuildvxl.jpg|right|thumb|alt=alt text|Batch Build VTK]]
 
# Turn ON the following options under ALL_BUILD:
 
#*Debug|x64
 
#*Release|x64
 
#<tt>Build</tt>
 
 
# As you wait, [http://xkcd.com/323/ take a nice long shower.]
 
# As you wait, [http://xkcd.com/323/ take a nice long shower.]
  

Latest revision as of 07:31, 23 September 2014

For conformity purposes, save the FARSIGHT source code, QT, VXL, ITK, and VTK to C:\Lab (if possible). The following instructions will assume that the source codes will be saved in C:\Lab.

Contents

Build or install Qt

  1. Build Qt from source. Download it from here: Windows Qt source code. Linux/Mac Qt source code.
  2. Extract the zip file to C:\Lab (or the directory of your choosing).

For Visual Studio 2008/2010:

  1. Go to Start->All Programs->Microsoft Visual Studio 2008->Visual Studio Tools->Visual Studio 2008 x64 Win64 Command Prompt
  2. cd to the directory where you unzipped the QT source (Auto-complete key: tab)
    alt text
    Go to the QT root directory in the Visual Studio 2008 x64 Win64 command prompt. This image shows how to change drives.
  3. Run "configure -mp" (see figure below) (This should take about 5 minutes or more. Reading material as you wait.)
    Configure Configuring done, now nmake The command prompt should look like this after nmake completes.
  4. Run "nmake" Take a coffee break. This step will take at least 30 minutes.
    • If you made a mistake somewhere, you can start from scratch by typing "nmake confclean"

Download Boost

  1. Download the Boost C++ libraries from the Boost download page.
    • Make sure you download the actual source file and not the documentation (The documentation will have pdf in its name.)
  2. Unzip it to C:\Lab (or a directory of your choosing).

You do not need to compile it.

Source Libraries Configuration

Build VXL

Download VXL by going to: (Start -> Git Bash in search box). Then type the following lines:

cd /c/Lab/VXL/source

git clone git://git.code.sf.net/p/vxl/git vxl-git .
git checkout d8aee93ce8bfc88765fff8ffe5c364d636be8a97
  1. Run CMake.
  2. Specify the source folder and binary folder.
  3. Configure
  4. Specify the generator for this project: Visual Studio 9 2008 Win64
  5. (optional) For speed optimization in Visual Studio, append /MP to CMAKE_C_FLAGS and CMAKE_CXX_FLAGS as shown in the figure to the right.
    Multicore building VXL
  6. Turn the following options OFF:
    • BUILD_BRL
    • BUILD_CONVERSIONS
    • BUILD_EXAMPLES
    • BUILD_GEL
    • BUILD_OUL
    • BUILD_OXL
    • BUILD_PRIP
    • BUILD_TBL
    • BUILD_TESTING
      CMake VXL
  7. Turn the following options ON:
    • BUILD_RPL_RGTL
    • VNL_CONFIG_LEGACY_METHODS
    • VXL_FORCE_V3P_PNG (Mac ONLY)
  8. Click configure and then turn the following option ON:
    • BUILD_RPL_RTVL (will show up in pink)
  9. Configure again and then Generate
  10. Go to the VXL binary folder and open the solution file (vxl.sln).
  11. Go to the main menu bar: Build->Batch Build
  12. Turn ON the following options under ALL_BUILD:
    • Debug|x64
    • Release|x64
      Batch Build VXL
  13. Build
  14. As you wait, play some Starcraft 2.

Build VTK

Download VTK by going to: (Start -> Git Bash in search box). Then type the following lines:

cd /c/Lab/VTK
git clone git://vtk.org/VTK.git Source
cd Source
git checkout v5.10.1
  1. Run CMake.
  2. Specify the source folder and the binary folder.
  3. Configure
  4. Specify the generator for this project: Visual Studio 9 2008 Win64
  5. (optional) For speed optimization in Visual Studio, append /MP to CMAKE_C_FLAGS and CMAKE_CXX_FLAGS as shown in the figure to the right. The git version may have a CMAKE_CXX_MP_FLAG, in which case just check that and add your number of processors to CMAKE_CXX_MP_NUM_PROCESSORS.
    Multicore building VTK
  6. Turn OFF the following options:
    • BUILD_DOCUMENTATION
    • BUILD_EXAMPLES
    • BUILD_SHARED_LIBS
    • BUILD_TESTING
  7. Turn ON the following options:
    • VTK_USE_BOOST
    • VTK_USE_GUISUPPORT
    • VTK_USE_QT
  8. Configure
  9. Turn ON the following option:
    • VTK_USE_QTCHARTS
    • Set Boost_INCLUDE_DIR to the root of the Boost source tree.
  10. Turn OFF the following option:
    • VTK_QT_USE_WEBKIT
  11. Configure
    • An error may appear about QT_QMAKE_EXECUTABLE not being found. Simply provide the path to qmake.exe (should be <QT root directory>/bin/qmake.exe)
  12. Generate
  13. Go to the VTK binary folder and open the solution file (VTK.sln).
  14. Go to the file toolbar: Build->Batch Build
    alt text
    Batch Build VTK
  15. Turn ON the following options under ALL_BUILD:
    • Debug|x64
    • Release|x64
  16. Build
  17. As you wait, take a nice long shower.

Build ITKv4

Download ITKv4 by going to: (Start -> Git Bash in search box). Then type the following lines:

cd /c/Lab/ITK

git clone git://itk.org/ITK.git Source
cd Source
git checkout v4.3.2
ITK


  1. Run CMake.
  2. Specify the source folder and binary folder.
  3. Configure
  4. Specify the generator for this project: Visual Studio 9 2008 Win64
  5. An error will show up in the CMake log complaining about BUILD_TESTING being on.
  6. (optional) For speed optimization in Visual Studio, append /MP to CMAKE_C_FLAGS and CMAKE_CXX_FLAGS as shown in the figure to the right.
    alt text
    Multicore building ITKv4. Make sure you change the number according to the number of processors you have! (ie. /MP8)
  7. Turn OFF the following:
    • BUILD_TESTING
    • BUILD_EXAMPLES
  8. Configure again.
  9. Turn ON the following:
    • ITKGroup_* or ITK_BUILD_ALL_MODULES
    • ITK_USE_64BITS_IDS
    • ITK_USE_REVIEW
    • ITK_USE_SYSTEM_VXL
    • Module_ITKVtkGlue
      • On the next Configure you will have to specify VTK_DIR and VXL_DIR.
  10. Configure again and then Generate
  11. Go to the ITK binary folder and open the solution file (ITK.sln).
  12. Go to the file toolbar: Build->Batch Build
    alt text
    Batch Build ITK
  13. Turn ON the following options under ALL_BUILD:
    • Debug|x64
    • Release|x64
  14. Build
  15. As you wait, poke your neighbor.


CMakeList files may need to be edited to use ${ITK_LIBRARIES} instead of ITKCommon, ITKIO, ITKBasicFilter.... etc, otherwise you will get errors like "Cannot open file: ITKCommon.lib"

See FARSIGHT_Tutorials/Building_Software if you'd like to enable Python wrapping for ITK.

  1. As you wait, take a nice long shower.

Build FARSIGHT

  1. Run CMake.
  2. Specify the source folder and the binary folder.
  3. Configure
  4. Set your desired modules to ON. CMake will then tell you if you are missing any libraries.
    • Some modules need glut. Therefore, set the desired locations properly for:
      • GLUT_INCLUDE_DIR, (ex: C:/Program Files/Microsoft Visual Studio 8/VC/PlatformSDK/Include/gl)
      • and GLUT_glut_LIBRARY (ex: C:/Program Files/Microsoft Visual Studio 8/VC/PlatformSDK/Include/gl/glut32.lib)
    • If FTKImage fails to build, go to:
      • properties
        • configuration properties
          • C/C++ and under 'Additional options:' add "/bigobj:
    • THE PACKAGE project does not build automatically, but can be selected and build.
      • It requires some type of platform specific program for creating install packages.
        • Build PACKAGE to create an install file of Farsight.
Note: If running the executable results in the following error: 
"QtGui4.dll was not found"
you may need to add the QT bin directory to the system path on your OS.
Personal tools