Mac OSX Installation
Mac OS X 10.7 Lion Installation with MacPorts
Gerris installs and works fine on Lion and did install fine on older systems. Look at the Wiki's history for help on other systems.
Installation on Macs is an installation from source, not from packages, so you need to know a little bit of linux, how to use line commands in the Terminal etc...
- You need to install the latest version of Xcode.
- Command line tools
- You need also to install the line command tools. Without this, you do not even have a C compiler. This may be invisible when you run "configure" for Gerris. Moreover, you may still have the gcc from Macports, but you won't have apple's gcc. You can find the command line tools at
- A typical way to install is using MacPorts, and without the line command tools it will not work. See also Brew below.
- Getting the sources
- You may either download and unpack a source tarball or use darcs. In the latter case you need to install Darcs in order to download the gerris sources.
Updating from older systems:
- If you're using gfortran AND if you migrated your old data (from Snow Leopard, Leopard or Tiger), take care to update your gfortran installation. Make sure to untar the package in the root directory otherwise your gfrotran will be in a funny location.
- If you had fink previously installed and wish to use MacPorts you should uninstall the fink stuff, remove the /sw library and modify the environment variables accordingly.
Be careful that the ACLOCAL path is set like:
export ACLOCAL_FLAGS="-I/opt/local/share/aclocal $ACLOCAL_FLAGS"
You should also take care to avoid conflicts with libraries that may have been installed elsewhere. One way to avoid the conflicts is to set the MacPorts library first in the PKG_CONFIG_PATH variable.
The Gerris configure will read this variable and get the right MacPort libraries. There is in fact a whole lot of other environment variables that should be set to use with MacPorts to paths starting with /opt/local, read the MacPorts documentation.
The packages must installed as in
sudo port install pkgconfig glib2-devel gtkglext startup-notification gawk ffmpeg libtool
You also need to install autoconf and automake. You need to chose the right version: currently, 2.69 for autoconf and 1.12 for automake
Many Macs are multicore so you can do make -j 4 and cool parallel simulations. To have mpi you need to install openmpi using macports and link openmpirun to mpirun and openmpicc to mpicc.
% sudo ln -s /opt/local/bin/openmpirun /usr/local/bin/mpirun % sudo ln -s /opt/local/bin/openmpicc /usr/local/bin/mpicc
Follow the steps indicated in installation from source. Download the source (preferably using darcs), then run autogen, for gts, gerris and gfsview.
There were difficulties in the past with gfsview installation because of conflicts with gtk2 and gtkglext packages, but as of Apr 16, 2011 the MacPorts packages were working fine. See the discussion page for a record of these problems and how they were solved.
If some of these steps do not work for you or you find that corrections to this wiki are warranted, write to the mailing list or edit the wiki, or both.
Mac OS X 10.6 Snow Leopard (Intel) Installation with "brew"
This is only a recipe (sorry), it works for an out of the box machine (no Fink, no Macports, only XCode has to be present). First install brew and the packages, then gerris from source.
Start by the installation of homebrew ( see the exact procedure on the web page, it changes)
ruby -e "$(curl -fsSL https://raw.github.com/gist/323731)" sudo mkdir -p /usr/local sudo chown -R $USER:staff /usr/local curl -Lsf http://github.com/mxcl/homebrew/tarball/master | tar xz --strip 1 -C/usr/local brew install git git clone http://github.com/mxcl/homebrew.git /tmp/homebrew mv /tmp/homebrew/.git /usr/local/ rm -rf /tmp/homebrew
Now that brew is installed, we can add packages, such as gnuplot, gawk and other useful packages
brew search gnuplot brew info gnuplot brew install gnuplot brew install gawk brew install ffmpeg brew install imagemagick brew install GtkGlExt brew install gsl brew install coreutils
Open the hidden file ".bashrc" in your "home", with "vi" or emacs or ...
if you use vi, press "i" to be in insert mode (see -- INSERT-- at the bottom), paste the following
export PATH=$PATH:/usr/local/bin export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
go out the file with "ESC" and ":wq" then do, to update your path
You have to download "startup-notification" on the web
Caution: the -0.10 works, the -0.12 don not due to a XCB bug fixed in the -0.10 compile and install (put the good User Name)
cd /Users/pyl/Downloads/startup-notification-0.10 ./configure make sudo make install
Installing Gerris from tarball
go to gerris
take all the three tarball in the Download directory, unzip them and start:
cd ../gts-snapshot-* ./configure make sudo make install
Be careful that the ACLOCAL path is set like:
Take gerris on the website then
cd ../gerris-snapshot-* ./configure make sudo make install gerris2D -V
It works! More difficult, take gfsview then
Now, open the file "configure.in" remove everything between "PKG_CHECK_MODULES(OSMESA,..." line 59 and "AM_CONDI.." add "have_osmesa=no" if using vi, erase line with "dd", and insert "i" the line
in between. e.g. in this file the lines are now :
PKG_CHECK_MODULES(OSMESA, [ osmesa ], [ have_osmesa=yes ], [ have_osmesa=no ]) have_osmesa=no AM_CONDITIONAL(HAVE_OSMESA, test "x$have_osmesa" = "xyes")
go out and save (esc :wq) configure.in
LDFLAGS="-L/usr/X11/lib" sh autogen.sh
make sudo make install gfsview2D
X11 on MacBook: you need a three-button mouse or trackpad emulation
You need either to connect a three-button mouse to your Mac or have the middle and right-click functions of a mouse emulated on the trackpad. Go into the X11 application (it can be reached inside your Dock) then under the X11 menu go into "Preferences" and select "emulate a three button mouse".
Then press the "Command" (cmd) key and move ONE finger on the trackpad while clicking on the trackpad to emulate the right-click on the mouse and move around the gfs view. Press the "Command" (cmd) key and move TWO fingers on the trackpad to emulate the center-click on the mouse or the scrolling, to zoom in and out these pretty gfsview images ...
Mac OS X 10.5 (Intel) Installation with fink
The instructions below for 10.4 should work but there is an OpenGL bug in Xcode 3.0. Either upgrade to Xcode 3.1 or later, or use the following fix when configuring/compiling gfsview:
cd ../gfsview-stable LDFLAGS="-Wl,-dylib_file,/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib:/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib sh autogen.sh --prefix=/opt/gerris make && make install
Mac OS X 10.4 (Intel) Installation with fink
Below are steps that have worked for at least three people, installing Gerris under Mac OS X 10.4 (Intel).
- You will need the Apple development tools installed - this is a free download from http://developer.apple.com/tools/.
- Check that you have Apple's X11 and the X11 SDK installed. They are not installed by default on a new machine (at least as far as I could figure out). If X11 is not installed, in OS X 10.4 you need to reinstall your system from the DVD (See here). Reinstalling the system will not remove your user files. (For comparison, on my system, the versions were X11 1.1.3 - XFree86 4.4.0 .)
- Install Fink (http://finkproject.org).
- Install various dependencies that Gerris requires.
sudo fink install pkgconfig glib2 glib2-dev glib2-shlibs gtk+2 gtk+2-dev \ gtkglext1 startup-notification-dev \ startup-notification-shlibs
Other packages may also be necessary. Look at the error messages during the configuration steps below to see what packages may be missing. Then the best way to resolve the problem may be to install "fink commander". Then search for all the packages that have a name beginning with pango, gtk+, atk1 and install all of them. Trial and error should eventually lead you to a full installation of all the necessary packages.
- Install darcs (needed to obtain the latest version of Gerris, GTS, and GfsView - the packaged versions available on the web do not work). Darcs is not available in Fink either.
- Download the DMG from http://glozer.net/darcs/, and mount it.
- From the DMG, Drag GMP.Framework into /Library/Frameworks.
- From the DMG, put the 'darcs' executable wherever you wish (e.g. /usr/local/bin).
- From a suitable folder, obtain the latest versions of GTS, Gerris, and GfsView.
darcs get http://gerris.dalembert.upmc.fr/darcs/gerris-stable darcs get http://gerris.dalembert.upmc.fr/darcs/gts-stable darcs get http://gerris.dalembert.upmc.fr/darcs/gfsview-stable
- We will install these in /opt/gerris to keep them isolated from the rest of the system. This requires /opt/gerris/lib/pkgconfig to be added to your PKG_CONFIG_PATH. This directory does not exist yet - it will be created in the next step.
echo "export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/opt/gerris/lib/pkgconfig" >> ~/.profile
- Check your version of automake:
% automake --version
Currently (November 8, 2007) this installation procedure works with automake 1.6.3 which is on your system by default. Any later version should also work.
- Add the gerris directory to your path (so gts-config works properly), also add the fink directory.
echo "export PATH=$PATH:/opt/gerris/bin:/sw/bin" >> ~/.profile
- Compile and install GTS, Gerris and GfsView.
cd gts-stable sh autogen.sh --prefix=/opt/gerris make && make install cd ../gerris-stable sh autogen.sh --prefix=/opt/gerris make && make install cd ../gfsview-stable sh autogen.sh --prefix=/opt/gerris make && make install
- Test your installation. Beware of end of line characters.
- You're done !
If we want to generate MPEG movies using ppm2mpeg we will need ffmpeg which is not available in Fink stable, so we must install it manually.
- Download the latest SVN snapshot from http://ffmpeg.org/releases/
- Unpack and install it.
tar -xvjf ffmpeg-export-snapshot.tar.bz2 cd ffmpeg-export-<insert date here> ./configure --prefix=/opt/gerris make && make install