- The Command Line Tools have to be installed.
- Homebrew has to be installed.
- The
python
installation provided by Mac OS should be used. It should neither be installed by homebrew nor by a binary package from python.org. - No installation of
I3_PORTS
. (No IceCube versions ofports
orcmake
are needed.)
This guide was written for the following software versions. Please feel free to update it to the current versions.
- Mac OS X 10.9.2 Mavericks
- Homebrew 0.9.5
- Python 2.7.6
- Simulation Trunk of 2014-05-12.
Assuming one is using zsh
, ~/.zshenv
has to be modified. Duplications with ~/.zshrc
are to be avoided. Using bash
the file ~/.bashrc
has to be modified respectively.
# ~/.zshenv
# ...
# homebrew
export PATH="/usr/local/bin:$PATH"
export PATH="/usr/local/sbin:$PATH"
# java
export JAVA_HOME="/Library/Java/Home"
# icecube
export ICECUBE_SOFTWARE="~/icecube/software" # modify this to your needs!
export SVN="http://code.icecube.wisc.edu/svn"
export PYTHONPATH="/usr/local/lib/root/:/usr/local/lib/python2.7/site-packages:$PYTHONPATH"
export SIM="$ICECUBE_SOFTWARE/simulation-trunk-2014-05-12/debug_build"
Close your terminal and open a new one to load the changes.
Make sure the code server is in your /etc/hosts
:
Send a ping code.icecube.wisc.edu
and add the ip to your /etc/hosts
:
# /etc/hosts
# ...
128.8.164.186 code
That way, you can reference http://code.icecube.wisc.edu
as http://code
, which is needed for some packages.
brew update
brew tap homebrew/science
brew tap jvansanten/icecube
brew install boost cmake cdk gsl hdf5 libarchive cfitsio minuit2 mysql qt pyqt suite-sparse sprng2 geant clhep log4cpp doxygen rdmc ccache distcc
First, try:
brew install root --cocoa
But ignore the homebrew comment about adding a thisroot.sh
to your .bashrc
or .bash_profile
.
For some reason, installing xrootd
fails for me with some xrdadler32
error.
Try to use this bottle:
brew install https://teamcity-dss.cern.ch:8443/repository/download/bt76/33118:id/xrootd-macosx-3.3.6.tar.bz2
Alternatively, manually:
I downloaded the current xrootd stable build for Mac OS from the build service to ~/Downloads/xrootd-3.3.6
.
mkdir -p /usr/local/Cellar/xrootd
mv ~/Downloads/xrootd-3.3.6 /usr/local/Cellar/xrootd/3.3.6
brew link xrootd
brew info xrootd
should confirm that xrootd is installed now.
Continue, installing root:
brew install root --cocoa
First, try:
brew install slalib-c
Make sure, the code server is added to your /etc/hosts
as described above. Then, try again.
Have a look at http://code.icecube.wisc.edu/svn/meta-projects/simulation/releases and find out which is the current release. At 2014-05-12, the current release is simulation V04-00-12.
Alternatively, try the trunk (which would be the master branch in git jargon).
mkdir -p $ICECUBE_SOFTWARE/simulation-trunk-2014-05-12/debug_build
cd $ICECUBE_SOFTWARE/simulation-trunk-2014-05-12
svn co $SVN/meta-projects/simulation/trunk/ src
cd $ICECUBE_SOFTWARE/simulation-trunk-2014-05-12/debug_build
cmake -D CMAKE_BUILD_TYPE=Debug -D SYSTEM_PACKAGES=true ../src
./env-shell.sh
make -j 2 # compile on 2 cores
Patch this file by including cdk/
in several #include
directives:
// /usr/local/Cellar/cdk/5.0.20140118/include/cdk.h
// ...
/*
* Generated headers:
*/
#include <cdk/dscale.h>
#include <cdk/fscale.h>
#include <cdk/scale.h>
#include <cdk/uscale.h>
#include <cdk/fslider.h>
#include <cdk/slider.h>
#include <cdk/uslider.h>
To verify that this is the same problem, run the ./env-shell.sh
script, start python
and try:
# python
from icecube.dataclasses import I3Particle
If this causes python to crash, this is the same problem.
Attention: Do not delete the following files, which are the python system installation of Mac OS. Make sure you do have a backup:
/System/Library/Frameworks/Python.framework
/usr/bin/python
/usr/include/python*
/usr/lib/python*
/usr/lib/libpython*
Steps to resolve the issue:
- Remove every python installation (homebrew, third-party binary) except for the system one, which is in
/System/Library/Frameworks/Python.framework
,/usr/bin/python
,/usr/include
and/usr/lib
. In order to find other installations,sudo /usr/libexec/locate.updatedb && locate python
might help. brew uninstall boost root; brew install boost boost-build root
.sudo easy_install pip && sudo pip install numpy sphinx
echo '/usr/local/lib/python2.7/site-packages' > /Library/Python/2.7/site-packages/homebrew.pth
sudo pip install urwid
- Then: Reconfigure and recompile
simulation
.
This takes 40 minutes:
brew uninstall boost; brew install boost --build-from-source --with-python
sudo easy_install pip
sudo pip install ipython
In order to make ipython qtconsole
work:
sudo pip install python-qt
brew install pyqt pyside
mkdir -p ~/Library/Python/2.7/lib/python/site-packages
echo '/usr/local/lib/python2.7/site-packages' > ~/Library/Python/2.7/lib/python/site-packages/homebrew.pth
sudo pip install pyzmq
ipython qtconsole
More information: http://ipython.org/ipython-doc/dev/interactive/qtconsole.html
The event viewer of IceCube is Steamshovel.
cd $ICECUBE_SOFTWARE/simulation-trunk-2014-05-12/debug_build
./env-shell.sh
bin/steamshovel
brew update
brew upgrade libpng
brew reinstall qt
See: Homebrew/legacy-homebrew#27898
brew install sip
cd /usr/local/lib/python2.7/site-packages
ln -s /usr/local/Cellar/sip/4.15.5/lib/python2.7/site-packages sip
Make sure that /usr/local/lib/python2.7/site-packages
is in your $PYTHONPATH
.
brew uninstall pyside
brew install pyqt
- http://software.icecube.wisc.edu/offline_trunk/
- http://software.icecube.wisc.edu/simulation_trunk/
- http://software.icecube.wisc.edu/offline-software.trunk/projects/cmake/installing_ports.html#the-individual-steps
- http://lists.icecube.wisc.edu/pipermail/dataclass/2014-April/012197.html
- https://wiki.icecube.wisc.edu/index.php/Installing_IceSim_on_OSX_Mavericks
- https://wiki.icecube.wisc.edu/index.php/Installing_IceRec_on_OSX_Mavericks
- http://software.icecube.wisc.edu/offline_trunk/metaproject/overview.html
Try the #icecube
irc channel on irc.efnet.net
. A good irc client for Mac OS is Colloquy.