This toolkit was developed under United States Air Force Contract FA8650-07-D-5800.
This toolkit contains code originally developed by Dr. Michael A. Groeber
from the United Stated Air Force Research Laboratories.
Primary Contact Information
Michael A. Jackson
BlueQuartz Software
http://www.bluequartz.net
dream3d@bluequartz.net
The software contained in this project requires the following third party libraries:
- CMake (www.cmake.org) Version 2.8.12 or greater
- Boost (www.boost.org) Version 1.55.0 or greater
- Qt (www.qtsoftware.com) Version 4.8.5 ONLY. NOT Qt Version 5
- Qwt (qwt.sourceforge.net) Version 5.2.2 or Greater
- HDF5 (www.hdfgroup.org) Version 1.8.12 or Greater
CMake
You will need to install CMake from www.cmake.org in
order to configure the source codes for your operating system and compiler tools. Simply
download CMake from the website and use the installer to install CMake onto your system.
The minimum version of CMake that is needed is Version 2.8.12.
HDF5
The minimal version needed is HDF5 Version 1.8.12
Download and compile HDF5 and install on your system somewhere.
Boost
One should use a minimum version of 1.55.0 in order to compile the source
codes. One can download the boost sources from www.boost.org. On all platforms the
user should strive to compile boost as static libraries with dynamic linkage to
the C and C++ standard libraries.
This can be accomplished using the following scheme.
1: First download or otherwise compile and install bjam which comes with the Boost
source code distribution. After bjam.exe is compiled and available in your path
open a Visual Studio Command prompt and change directories into the top level of
the boost source distribution.
Windows Command Prompt invocation to compile Boost
Note that in the following command, the "toolset=xxxxx" should match the version of Visual Studio that you have installed on your system.
- Visual Studio 2008 ==> msvc-9.0
- Visual Studio 2010 ==> msvc-10.0
- Visual Studio 2012 ==> msvc-11.0
- Visual Studio 2013 ==> msvc-12.0
Also pay attention to the "prefix" option as that is where the final boost headers
and libraries will be installed into.
bjam.exe toolset=msvc-9.0 --with-program_options --with-date_time --with-thread
--prefix=C:\Developer\VS9\boost_1_55.0 variant=release,debug threading=multi
link=static runtime-link=shared install
OS X
The following command can be used to compile boost on OS X and other Unix
like Systems. This also assumes that bjam is already compiled and ready to go.
bjam toolset=darwin --with-program_options --with-thread variant=release,debug threading=multi
link=static runtime-link=shared --prefix=/Users/Shared/Toolkits/boost-1_55.0/
architecture=combined address-model=32_64 install
Qt
Typically the latest version of Qt is compatible with the code although for reference the
development code was written using Qt version 4.8.5 where Qt Version 4.8.5 is current
as of this writing.
Download the source code for Qt from Nokia. For versions starting with 4.8.5 the file
is in a single archive file "qt-everywhere-opensource-src-4.8.5.tar.gz". You may have
to download the source from pt-project.org in order to get a specific
version of the sources.
Uncompress the source codes and open either Terminal.app on OS X, an XTerm on Linux
or a Visual Studio Command Prompt on Windows. Change directories into the top
level of the uncompressed source code and do one of the following based on your
operating system.
WINDOWS SPECIAL NOTE
You should locate the Qt source code directory in its FINAL
location on your file system including any naming of the top level directory. For
instance on the development system the Qt libraries are compiled into
C:\Developer\i386\Qt-4.8.5 for the 32 bit version and C:\Developer\x64\Qt-4.8.5
for the 64 bit version.
WINDOWS SPECIAL NOTE II
In order to compile a 64 bit version of Qt you MUST be
running a 64 bit version of Windows. This is because during the compilation, the
build system needs to run programs that are built during the build process. You
will also need at least "Visual Studio Standard" edition which is the lowest edition
that supports 64 bit compiles. Visual Studio Express (as of VS 2010 Express) does
directly support 64 bit compiles.
WINDOWS SPECIAL NOTE III
Technically it is possible to move the qt directory after
all the compiles are complete but this involves lots of unsupported hacks, work-
arounds and other "trickery" to get it to work. Google is your friend if you
want to try this.
Qt Configuration and Compile
Windows Visual Studio
configure -nomake demos -nomake examples -debug-and-release -shared -fast -exceptions -stl -no-qt3-support -no-webkit
OS X, Linux, Unix
./configure -nomake demos -nomake examples -debug-and-release -shared -fast -exceptions -stl -no-qt3support -no-webkit -prefix /Users/Shared/Toolkits/Qt-4.6.1-UBFramework -universal -cocoa -arch x86 -arch x86_64 -largefile
Qwt Version 5.2.2
The StatsGenerator program uses the Qwt libraries in order to display 2D scatter plots. One can
download a CMake version of Qwt from http://scm.bluequartz.net/support-libraries/qwt
and then use CMake to configure it for building. Qwt requires Qt in order to build so build Qt FIRST then
build Qwt.
Compiling DREAM3D Sources
When the sources become public it is expected that you will be able to download the sources
from the following web site:
http://www.github.com/dream3d/DREAM3D.
Once the source codes are downloaded onto your system launch "CMake-Gui.exe" (Windows) or
CMake-Gui.app (OS X) depending on your system. This will present a Window to the user
with 2 text fields that need to be filled out:
"Where is the source code" should point to the DREAM3D directory:
"Where to build the binaries" should point to a DIFFERENT directory.
Some developers
prefer to have CMake create a new directory located inside the DREAM3D
directory called "Build" or "i386" or something like that. DO NOT name it "CMake".
Trust me on that.
There are a few CMake variables that you will need to fill out in order for CMake to
more easily find all the dependent libraries. Each of the variables points to the top
most directory of that particular installation or to a particular executable.
- HDF5_INSTALL:/Users/Shared/Toolkits/hdf5-1.8.11
- BOOST_ROOT:/Users/Shared/Toolkits/MXABoost-1.44
- QWT_INSTALL:/Users/Shared/Toolkits/Qwt-5.2.2
- QT_QMAKE_EXECUTABLE:/Users/Shared/Toolkits/Qt-4.8.5/bin/qmake
After those are filled out click the "Configure" button. A new window will appear
asking you to select the type of generator you want to run. Simply select the type
that matches the type of compile tools that you have installed. On Windows systems
for the Visual Studio choices there are both 32 and 64 bit selections. On OS X you
can have CMake generate Xcode projects in addition to plain makefiles.
After you have made your selection for a generator and told CMake-Gui to proceed
there will be some output printed and after a little bit the "Generate" button
will be enabled. Click the "Generate" button and wait for the process to complete.
Notes: If the "Generate" button did NOT become enabled then there was an error
occured during the configuration step. Most likely CMake could not located either
Boost or Qt. In order to help CMake find boost you can click the "Add Entry" button
and add a new CMake variable "Boost_ROOT" with a value that points to the location
of the boost installation. To help CMake find Qt you need to manually set the
QT_QMAKE_EXECUTABLE to the qmake executable program located in the bin directory
of the Qt installation.
After successfully generating your project files one can open the DREAM3D.sln
file on Windows, DREAM3D.xcodeproj on OS X or if you selected to generate
makefiles you would open a terminal, navigate to the build directory and execute the
"make" command.
After the successful compilation of DREAM3D there will be several
executables available to run.