Installing Chaste on MacOS Mojave

Warning: we're currently writing this guide and currently it does not work'''

This install guide is based upon a fresh install of OSX Mojave in October 2018.

It worked for cell based with scons on the 2nd of November 2018 (please update this page if it works for you, or send a message to chaste-users@…)

Xcode

Install Xcode from app store. (Version 10.0)

  • Xcode provides the "g++" compiler

Home Brew

see http://mxcl.github.com/homebrew/

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Check brew doctor to ensure homebrew is installed properly

Dependencies

If you're using the cell based code only you can roll the next few installs together. It will take a while.

brew install wget scons xerces-c petsc sundials xsd cmake vtk

This installs the necessary programs (may need to enter your password)

brew cask install xquartz paraview

HDF5

Homebrew no longer allows options so to install HDF5 with MPI you need to

brew install iltommi/brews/hdf5-parallel

Then force link it

brew link --force  hdf5-parallel

Also change line 218 of 'AbstractHdf5Converter'

to

H5Oget_info_by_name (loc_id, name, &infobuf,  0,H5P_DEFAULT);

Parmetis

There's no homebrew installer for parmetis so install this directly

Download and unzip the installer (4.0.3) from http://glaros.dtc.umn.edu/gkhome/metis/parmetis/download

in the parmetis directory

make config
make 
make install

You can now delete the downloaded files if you like

Python stuff

ls /usr/local/Cellar/openssl

you should get something like

1.0.2p

Then run

brew switch openssl 1.0.2p

where you replace the number as appropriate.

you should see

Cleaning /usr/local/Cellar/openssl/1.0.2p
Opt link created for /usr/local/Cellar/openssl/1.0.2p

Now you can install pip

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python get-pip.py

Now install the necessary python tools (for pyCellML)

pip install --user "python-dateutil==1.5"
pip install --user "rdflib==2.4.2"
pip install --user lxml
pip install --user "Amara==1.2.0.2"

If the above displays an error when installing Amara, try again with:

sudo easy_install https://pypi.python.org/packages/2.5/A/Amara/Amara-1.2.0.2-py2.5.egg

Get the chaste source code

See

https://chaste.cs.ox.ac.uk/trac/wiki/ChasteGuides/AccessCodeRepository

You will need to change line 59 of

    self._cc_flags = ['-Wall', '-Werror']

to

    self._cc_flags = []

Host Config

Use attachment:local.py (experimental) for your host config?. Note some of the version numbers will need to be updated to the current versions on Homebrew.

Save it as python/hostconfig/local.py.


More for the developer

Valgrind

Not necessary, but useful to the serious developer.

brew install valgrind

Handy things

To be able to see the tmp folder in finder use

sudo chflags nohidden /tmp

Useful aliases to add to ~/.bash_profile

nano ~/.bash_profile
alias cdchaste='cd /Users/chaste/workspace/Chaste' #Or similar