MRiLab icon indicating copy to clipboard operation
MRiLab copied to clipboard

Installation on MacOS High Sierra

Open pimpul opened this issue 7 years ago • 3 comments

Hello, I'd like to run MRiLab on Mac, but I'm running into cmake compilation issues. I'm not a cmake expert, but what I did is:

  1. Install packages with homebrew:
~$ brew install cmake
~$ brew install vtk
~$ brew install boost
  1. obtain and install IPP from https://software.seek.intel.com/performance-libraries.

  2. add to .bash_profile:

MATLAB_ROOT=/Applications/MATLAB_R2017b.app/bin
export MATLAB_ROOT
. /opt/intel/ipp/bin/ippvars.sh #sets environment variables for IPP 
IPP_ROOT=$IPPROOT
export IPP_ROOT
  1. modify FindIPP.cmake:

IF ($ENV{IPP_ROOT} MATCHES .*compilers_and_libraries_2018.1.126.*)

However, the libraries on Mac have different names than on Linux..which one is which?

libipp_iw.a       libippchk0.dylib* libippcvp8.dylib* libippie9.dylib*  libippsp8.dylib*
libippcc.a        libippchl9.dylib* libippcvs8.dylib* libippig9.dylib*  libippss8.dylib*
libippcc.dylib*   libippchn8.dylib* libippcvy8.dylib* libippih9.dylib*  libippsy8.dylib*
libippcce9.dylib* libippchp8.dylib* libippdc.a        libippik0.dylib*  libippvm.a
libippccg9.dylib* libippchs8.dylib* libippdc.dylib*   libippil9.dylib*  libippvm.dylib*
libippcch9.dylib* libippchy8.dylib* libippdce9.dylib* libippin8.dylib*  libippvme9.dylib*
libippcck0.dylib* libippcore.a      libippdcg9.dylib* libippip8.dylib*  libippvmg9.dylib*
libippccl9.dylib* libippcore.dylib* libippdch9.dylib* libippis8.dylib*  libippvmh9.dylib*
libippccn8.dylib* libippcore_tl.a   libippdck0.dylib* libippiy8.dylib*  libippvmk0.dylib*
libippccp8.dylib* libippcv.a        libippdcl9.dylib* libipps.a         libippvml9.dylib*
libippccs8.dylib* libippcv.dylib*   libippdcn8.dylib* libipps.dylib*    libippvmn8.dylib*
libippccy8.dylib* libippcve9.dylib* libippdcp8.dylib* libippse9.dylib*  libippvmp8.dylib*
libippch.a        libippcvg9.dylib* libippdcs8.dylib* libippsg9.dylib*  libippvms8.dylib*
libippch.dylib*   libippcvh9.dylib* libippdcy8.dylib* libippsh9.dylib*  libippvmy8.dylib*
libippche9.dylib* libippcvk0.dylib* libippi.a         libippsk0.dylib*
libippchg9.dylib* libippcvl9.dylib* libippi.dylib*    libippsl9.dylib*
libippchh9.dylib* libippcvn8.dylib* libippi_tl.a      libippsn8.dylib*

the include/ files are:

ipp.h         ippch.h       ippcv.h       ippdefs_l.h   ipps.h        ippversion.h
ippbase.h     ippcore.h     ippcv_l.h     ippi.h        ipps_l.h      ippvm.h
ippcc.h       ippcore_l.h   ippdc.h       ippi_l.h      ipptypes.h    iw/
  1. try to compile with cmake:
~/bin/MRiLab/build$ cmake ../Lib/src/
-- MATLAB_ROOT: /Applications/MATLAB_R2017b.app/bin
-- IPP_ROOT (IPP 7): /opt/intel/compilers_and_libraries_2018.1.126/mac/ipp
-- Could NOT find IPP (missing: IPP_LIBRARIES) 
-- FRAMEWAVE_ROOT environment variable not set.
-- In Linux this can be done in your user .bashrc file by appending the corresponding line, e.g:
-- export FRAMEWAVE_ROOT=/usr/local/framewave/build
-- In Windows this can be done by adding system variable, e.g:
-- FRAMEWAVE_ROOT=C:\Program Files\FRAMEWAVE_1.3.1_SRC\Framewave\build
-- Could NOT find Framewave (missing: FW_LIBRARIES FW_INCLUDE_DIR) 
-- Could NOT find OpenMP_C (missing: OpenMP_C_FLAGS OpenMP_C_LIB_NAMES) 
-- Could NOT find OpenMP_CXX (missing: OpenMP_CXX_FLAGS OpenMP_CXX_LIB_NAMES) 
-- Could NOT find OpenMP (missing: OpenMP_C_FOUND OpenMP_CXX_FOUND) 
CUDA_TOOLKIT_ROOT_DIR not found or specified
-- Could NOT find CUDA (missing: CUDA_TOOLKIT_ROOT_DIR CUDA_NVCC_EXECUTABLE CUDA_INCLUDE_DIRS CUDA_CUDART_LIBRARY) 
-- Could NOT find Ismrmrd (missing: ISMRMRD_INCLUDE_DIR ISMRMRD_LIBRARIES ISMRMRD_SCHEMA_DIR) 
CMake Warning at /usr/local/Cellar/cmake/3.10.2/share/cmake/Modules/FindBoost.cmake:801 (message):
  New Boost version may have incorrect or missing dependencies and imported
  targets
Call Stack (most recent call first):
  /usr/local/Cellar/cmake/3.10.2/share/cmake/Modules/FindBoost.cmake:907 (_Boost_COMPONENT_DEPENDENCIES)
  /usr/local/Cellar/cmake/3.10.2/share/cmake/Modules/FindBoost.cmake:1542 (_Boost_MISSING_DEPENDENCIES)
  CMakeLists.txt:20 (find_package)


CMake Warning at /usr/local/Cellar/cmake/3.10.2/share/cmake/Modules/FindBoost.cmake:801 (message):
  New Boost version may have incorrect or missing dependencies and imported
  targets
Call Stack (most recent call first):
  /usr/local/Cellar/cmake/3.10.2/share/cmake/Modules/FindBoost.cmake:907 (_Boost_COMPONENT_DEPENDENCIES)
  /usr/local/Cellar/cmake/3.10.2/share/cmake/Modules/FindBoost.cmake:1542 (_Boost_MISSING_DEPENDENCIES)
  CMakeLists.txt:20 (find_package)


CMake Warning at /usr/local/Cellar/cmake/3.10.2/share/cmake/Modules/FindBoost.cmake:801 (message):
  New Boost version may have incorrect or missing dependencies and imported
  targets
Call Stack (most recent call first):
  /usr/local/Cellar/cmake/3.10.2/share/cmake/Modules/FindBoost.cmake:907 (_Boost_COMPONENT_DEPENDENCIES)
  /usr/local/Cellar/cmake/3.10.2/share/cmake/Modules/FindBoost.cmake:1542 (_Boost_MISSING_DEPENDENCIES)
  CMakeLists.txt:20 (find_package)


CMake Warning at /usr/local/Cellar/cmake/3.10.2/share/cmake/Modules/FindBoost.cmake:801 (message):
  New Boost version may have incorrect or missing dependencies and imported
  targets
Call Stack (most recent call first):
  /usr/local/Cellar/cmake/3.10.2/share/cmake/Modules/FindBoost.cmake:907 (_Boost_COMPONENT_DEPENDENCIES)
  /usr/local/Cellar/cmake/3.10.2/share/cmake/Modules/FindBoost.cmake:1542 (_Boost_MISSING_DEPENDENCIES)
  CMakeLists.txt:20 (find_package)


CMake Warning at /usr/local/Cellar/cmake/3.10.2/share/cmake/Modules/FindBoost.cmake:801 (message):
  New Boost version may have incorrect or missing dependencies and imported
  targets
Call Stack (most recent call first):
  /usr/local/Cellar/cmake/3.10.2/share/cmake/Modules/FindBoost.cmake:907 (_Boost_COMPONENT_DEPENDENCIES)
  /usr/local/Cellar/cmake/3.10.2/share/cmake/Modules/FindBoost.cmake:1542 (_Boost_MISSING_DEPENDENCIES)
  CMakeLists.txt:20 (find_package)


-- Boost version: 1.66.0
-- Found the following Boost libraries:
--   thread
--   system
--   chrono
--   date_time
--   atomic
MATLAB not found...nothing will be built.
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
MATLAB_INCLUDE_DIR (ADVANCED)
   used as include directory in directory /Users/pimpullens/bin/MRiLab/Lib/src
   used as include directory in directory /Users/pimpullens/bin/MRiLab/Lib/src

-- Configuring incomplete, errors occurred!

Any idea how to continue? Your help will be very much appreciated!

Cheers,

Pim Univ. Hospital Gent, Belgium

pimpul avatar Feb 07 '18 08:02 pimpul

Sorry, I am still working on the MacOS version of MRiLab. Please let me know if you have successfully compiled in MacOS.

leoliuf avatar Mar 22 '18 02:03 leoliuf

A MacOS version would be very welcome among my students! Hope you can make it work!

DreymaR avatar Mar 22 '18 08:03 DreymaR

Hello! Just wondering if it is possible to run MRiLab on a Mac nowadays. Thanks!

cerulean-warbler avatar Mar 12 '21 18:03 cerulean-warbler