Skip to content

SDK Installation

Marc DeGraef edited this page Jun 1, 2018 · 1 revision

SDK Installation

Libraries that are Compiled in the SDK

Library Version Notes
HDF5 1.8.19 Compiled from Source
bcls 0.1 Compiled from Source
CLFortran 0.0.1 Compiled from Source on GitHub
FFTW 3.3.4 Precompiled (Windows) or Compiled (macOS/Linux)
Json-Fortran 4.2.1 Compiled from source on GitHub
Eigen 3.2.9 Compiled from Source
Qt 5 5.9.2 Precompiled Binaries from www.qt.io

Instructions

  1. Install your compiler tools

  2. Install CMake on your system (at least version 3.9)

  3. Install a Fortran compiler on your system (gfortran 6.3 or ifort v17)

  4. Install Git on your system (at least version 2.x)

  5. Install OpenCL on your system (not necessary on Mac OS X)

  6. Clone this repository (develop branch, [https://github.com/marcdegraef/EMsoftSuperbuild]) onto your hard disk

  7. Open a terminal, decide where you want to place the SDK, and invoke the following commands

     git clone git://www.github.com/marcdegraef/EMsoftSuperbuild
     cd EMsoftSuperbuild
     mkdir Debug
     cd Debug
     cmake -DEMsoft_SDK=/Some/Path/To/EMsoft_SDK -DCMAKE_BUILD_TYPE=Debug ../
     make -j
     cd ../
     mkdir Release
     cd Release
     cmake -DEMsoft_SDK=/Some/Path/To/EMsoft_SDK -DCMAKE_BUILD_TYPE=Release ../
     make -j
    
  8. The initial run of CMake is going to take a REALLY long time because it will be downloading the full Qt 5.9.2 installer which is about 3~4 GB in size. On macOS systems it then must verify the .dmg, mount it and run the installer (which verifies the .app). Go get coffee. Compiling (the 'make -j' part) should not take that long, only about 5 minutes or so.

NOTE: there is currently a known issue where the Qt5.9.2 installer will NOT actually run during the Linux cmake process. If the user does NOT want to build the GUI application then this is fine. If the user does want to build the GUI application then they will need to install Qt5.9.2 themselves. The download will be at /path/to/EMsoft_SDK/superbuild/Qt/download

The developer can use CMakeGui if they would like instead of the command lines. The only required variable are the path to where you want the EMsoft_SDK folder and the build type (Debug or Release)

Once the SDK builds correctly, no errors are reported on the command line, then the developer can proceed to clone and build EMsoft itself.

Information for Users

Home

SEM Modalities     - Monte Carlo Simulations
    - EBSD Master Pattern Simulations
    - EBSD Overlap Master Patterns
    - EBSD Pattern Simulations
    - EBSD Dictionary Indexing
    - EBSD Spherical Indexing
    - EBSD Reflector Ranking
    - EBSD HREBSD
    - ECP Master Pattern Simulations
    - ECP Pattern Simulations
    - TKD Master Pattern Simulations
    - TKD Pattern Simulations
    - ECCI Defect Image Simulations
TEM Modalities     - HH4
    - PED
    - CBED Pattern Simulations
    - STEM-DCI Image Simulations
    - EMIntegrateSTEM utility
XRD Modalities     - Laue Master Pattern Simulation
    - EMLaue
    - EMLaueSlit
General Parameter Definitions * Foil Defect Configuration Definitions
EMsoftWorkbench
Utility Programs     - EMConvertOrientations
    - EMDisorientations
    - EMHOLZ
    - EMKikuchiMap
    - EMOpenCLinfo
    - EMZAgeom
    - EMcuboMK
    - EMdpextract
    - EMdpmerge
    - EMdrawcell
    - EMeqvPS
    - EMeqvrot
    - EMfamily
    - EMGBO
    - EMGBOdm
    - EMgetEulers
    - EMgetOSM
    - EMlatgeom
    - EMlistSG
    - EMlistTC
    - EMmkxtal
    - EMorbit
    - EMorient
    - EMqg
    - EMsampleRFZ
    - EMshowxtal
    - EMsoftSlackTest
    - EMsoftinit
    - EMstar
    - EMstereo
    - EMxtalExtract
    - EMxtalinfo
    - EMzap
IDL Scripts     - Virtual Machine Apps
    - SEMDisplay
    - Efit
    - CBEDDisplay
python wrappers     - python examples
Docker     - Docker Image

Complete Examples

  1. Crystal Data Entry Example
  2. EBSD Example
  3. ECP Example
  4. TKD Example
  5. ECCI Example
  6. CBED Example
  7. Dictionary Indexing Example
  8. DItutorial

Information for Developers

Clone this wiki locally