Installation/Mac OS/OpenFOAM 2.1.x

From OpenFOAMWiki
< Installation‎ | Mac OS
Revision as of 21:44, 30 April 2012 by Wyldckat (Talk | contribs)

This is a transcript and subsequent improvements on the guide made by Michael Plagge. The original PDF: Compiling Manual OpenFOAm Mac OS X.pdf



1 Basic requirements

This manual assumes that the reader is familiar with Mac OS X, the installation of applications as well as with basic commands in the Terminal.app. This manual covers the installation of OpenFOAM on Mac OS X 10.6.8, also called Snow Leopard.

What do you need?

  • Apple Mac OS X 10.6.8
  • Apple Developer Tools 3.2.6 (delivered on the DVDs you’ve got with your mac, or you can download this here: developer.apple.com)
  • MacPorts software, you can download this here: www.macports.org

For downloading the Apple Developer Tools you might have to become a member of the Apple developer site, it is still free.

How do I know if the above mentioned software is already installed?

  1. Open the Terminal.app, which you will find in your /Applications/Utilities folder:
    Howto install OpenFOAM v21 Mac-images-000.ppm.png
  2. Type:
    gcc -v

    the output should look like this:

    Howto install OpenFOAM v21 Mac-images-002.ppm.png
  3. Check for the MPI installation as well by typing:
    mpirun -V
    Note: the option -V is different from -v
  4. After installing the MacPorts software - see www.macports.org/install.php for installation guide - we check the installation with:
    sudo port selfupdate
    Note: you have to confirm the sudo command with your password.
  5. Now we are installing the GCC 4.6 by entering:
    sudo port install gcc46

    on the command line. After the operation is done you could check the version and it should look like this:

    Howto install OpenFOAM v21 Mac-images-008.ppm.png


2 Installing and compiling OpenFOAM 2.1 with GCC 4.6 and OpenMPI 1.5.4

This section is divided into various sub-sections, detailing each step.


2.1 Create a disk image

First, we create a disk image with the Apple Disk Utility. Open /Applications/Utilities/Disk Utility. Click New Image:

Howto install OpenFOAM v21 Mac-images-010.ppm.png

It is important to set as Format: Mac OS Extended (Case-sensitive,Journaled). The sparse image will grow with the place used inside the image. Create a sparse image with the following settings (examples, you could change the values):

Howto install OpenFOAM v21 Mac-images-012.ppm.png

2.2 Get the OpenFOAM source code and patches

Go to the directory of the image by typing:

cd /Volumes/OpenFOAM-v2.1

Use a browser to download the archives of OpenFoam 2.1 and ThirdParty 2.1 from here and copy the archives into the image. Extract the archives by double clicking on each one. Then download the patches created by Bernhard Gschaider, available here.

Copy or move them into the image. Your image content should look like this:

Howto install OpenFOAM v21 Mac-images-016.ppm.png

Move the appropriate patches into the directories, see below:

Howto install OpenFOAM v21 Mac-images-018.ppm.png

2.3 Apply patches and tweaks

Change into the OpenFOAM directory and apply the first patch via:

patch -p1 < *.patch
Howto install OpenFOAM v21 Mac-images-020.ppm.png

The end of the output should look like this:

Howto install OpenFOAM v21 Mac-images-022.ppm.png

Add executive rights to a python script like this:

Howto install OpenFOAM v21 Mac-images-024.ppm.png

Apply the second patch for the compiler, in this case we use the GCC 4.6 so choose the right patch by typing:

patch -p1 < OpenFOAM-2.1.x-Mac-gcc46.patch

Open the file OpenFOAM-2.1.0/etc/bashrc with a text editor, e. g. Text Wrangler, pico or nano and add these lines:

ulimit −n 1024
export WM_NCOMPPROCS=20

A few notes about these two lines:

  • Apparently it's best that you manually write these two lines instead of copy-pasting, because apparently some weird characters will show up on your file (source).
  • The first entry is to increase the number of files which one process may open at a time; on the second you should set to the number of processes your CPU could manage in parallel, e. g. 4, 8, 16, ...
  • If you don't know how many your machine can handle, then run:
    sysctl -n hw.ncpu


The resulting OpenFOAM-2.1.0/etc/bashrc file should look similar to this:

Howto install OpenFOAM v21 Mac-images-026.ppm.png

2.4 Final preparations before building

Go back to your home directory by simply typing:

cd

Then create a symbolic link with:

ln -s /Volumes/OpenFOAM-v2.1 OpenFOAM
Howto install OpenFOAM v21 Mac-images-028.ppm.png

2.5 Source bashrc

Go back to your home directory again. Now you have to source the settings by running:

. OpenFOAM/OpenFOAM-2.1.0/etc/bashrc
Howto install OpenFOAM v21 Mac-images-030.ppm.png

No error or other output should occur.


2.6 Building OpenFOAM

Now we go to the OpenFOAM directory and start compilation. Take a coffee. And a cookie. Or two:

Howto install OpenFOAM v21 Mac-images-032.ppm.png

If you also want to keep a log-file in case of errors, type:

./Allwmake 2>&1 | tee make.log

If don't want to see what is happening during the build until it's completed, run:

./Allwmake > make.log 2>&1

When the command returns control to you, then you should be done... but first:

2.6.1 Diagnosing problems

You can check if there are any errors by opening the file Allwmake.log with a text editor and search for lines have the expression "Error " (including the space after the word "Error").
Keep in mind that if your terminal is returning error messages in another language, then you should search for the respective word for "Error".

If you do find errors, the first one is usually the one to blame for all of the other errors.

If you are unable to figure out what's wrong, then:

  1. Edit the file make.log with a text editor, search and replace any sensitive information, such as user names and folder paths.
  2. Pack the log file. For example, you can tarball it:
    tar -czf make.log.tar.gz make.log
  3. Go to the chapter Got Questions? and post the file make.log.tar.gz in the mentioned forum thread, along with your question(s).

3 Installing and using ParaView

Note: Part of these instructions were retrieved from here.

Follow these steps:

  1. Install ParaView from here.
  2. Edit the file ~/.alias and add the following two lines:
    alias paraview="/Applications/ParaView\ 3.14.0-RC2.app/Contents/MacOS/paraview"
    alias parax="touch case.foam && paraview --data=case.foam &"

    Note: Adapt the first line to the real path of your ParaView installation!

  3. Either start a new terminal or source the file by running:
    . ~/.alias
  4. Whenever you need to run paraFoam, run parax instead! Or you can also run:
    paraFoam -builtin


4 Got Questions?

If you've got questions about this installation process, go to the thread OF 1.9 (aka OF 2.1) on Mac OS X, read it from beginning to end and if you still have a question, ask it on that thread!