How to get GRASS GIS 7.0.5 working on Mac OS Sierra?

For some image processing tasks (especially I needed  the GRASS GIS command) and inspired by Peter Löwes recent blog post about the origins of GRASS GIS,  I installed GRASS GIS 7.0.5 on my MAC with MAC OS Sierra. The plan was to use GRASS GIS within QGIS. The installation can be tricky 😃.

That´s why I thought, I’ll provide a short tutorial, where I gather all necessary installation steps, collected from different websites. This should help you, to have a smooth installation and to support you in avoiding certain possible pitfalls. The most important parts of the installation are well documented on GRASS GIS for Mac can be downloaded here:

Several changes and installations have to be made on your Mac with macOS Sierra to run GRASS GIS:

I. The following frameworks have to be installed:

The frameworks are compiled by William Kyngesburye and can be downloaded from his website:  Big thanks to William, for porting and compiling QGIS and GRASS GIS for all GIS users! The frameworks also can be downloaded from the sources below  and  should be installed in the order given:

1. GDAL Complete 2.1 (2016-9-17 – 32bit) download
2. GDAL Complete 1.11 (2015-10-26 – 32bit) download
3. FreeType 2.4.12-1 download
4. cairo 1.12.2-1 (Install AFTER GDAL and FreeType) download
5. Numpy 1.8.0-1 download
6. MatPlotLib 1.3.0-3 (32bit) download
7. pandoc 1.13.1 download
8. PIL 1.1.7-4 download
10. Active States TclTk 8.5.7 (only for TclTk NVIZ in GRASS 6) download

II.MAC´s System Integrity Protection feature has to be disabled:

The steps to disable the system integrity protection were taken from

1. Restart your Mac in Recovery Mode. To do this, choose Restart from the Apple menu, and as soon as the screen turns black hold down Command + R on the keyboard until the Apple logo appears on your screen.

2. Select Terminal from the Utilities menu.

3. In the Terminal Window that opens type: csrutil disable
– Press the Return key.
– Choose Restart from the Apple menu.

III. Install Python 2.7 to avoid the well-known error: “Bad CPU type in executable”

This error is well-known and documented:

As workaround, I (re-)installed the latest version of Python 2.7, as documented by Sylvain Poulain. Also for me, this worked.

IV. The Bash profile has to be altered

The following two lines have to be added to the bash profile, because GRASS GIS doesn´t seem to get along with 64-bit architectures:

  • export GRASS_PYTHON=/usr/bin/python2.7 export
  • GRASS_PYTHONWX=/usr/bin/pythonw2.7
  1. Start up the terminal
  2. Type “cd ~/” to go to your home folder
  3. Type “touch .bash_profile” to create a  new file.
  4. Edit .bash_profile with your favorite editor (or you can just type “open -e .bash_profile” to open it in TextEdit.
  5. Add the following to lines: export GRASS_PYTHON=/usr/bin/python2.7 export -GRASS_PYTHONWX=/usr/bin/pythonw2.7
  6. Type “. .bash_profile” to reload .bash_profile and update any functions you add.

If everything works, GRASS GIS should start up and can be used by the command line, by it’s  GUI. 

V Configure GRASS applications folder in QGIS

The way I prefer to use GRASS is within QGIS´s processing toolbox. To run GRASS GIS tools within QGIS, the GRASS GIS application folder has to be defined. This will avoid the error below.

In my opinion is´s very convenient to run GRASS algorithms within QGIS. Just define the path of your GRASS GIS installation via QGIS -> processing ->providers -> GRASS7 folder . In my case the path is: /Applications/ 

After pointing to the GRASS GIS folder, I finally can use GRASS GIS the way I want to and I get access to more than 300 image processing algorithms within QGIS and more than 400 within the GRASS GUI!



Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.