Thursday, January 14, 2016

Compiling Flamerobin under Mac OS X 10.11 [Solution from Tomáš Dvořák]

Updated instructions are now here
https://github.com/mariuz/flamerobin/blob/master/BUILD.txt#L182

You can read the bellow section as historical notes :

------------------------------------------------------------------------------------------------------------------------------------------------------
I am writting this email about having solution for compiling latest version of Flamerobin under Mac OS X 10.11.2.

I've seen that in BUILD.txt are some old information for compiling under Mac OS X which aren't working on newer OS X based systems.

So I thought that I can provide some additional information for community about compiling Flamerobin under OS X :-)

--------------------------------------------------------------------------------------------------------------------------------------------------------

How to compile Flamerobin on Mac OS X 10.11

// Before we can get into compiling

- Download Mac OS X SDK's (https://github.com/phracker/MacOSX-SDKs), after download move that SDK into /Developer or your prefered folder
- Compiled wxWidgets version 3.0.2 installed with -prefix=/opt/wxwidget (optional)
- Need to install Homebrew (http://brew.sh/)
- After downloading and installing Homebrew run following commands:

  brew install boost
  brew install autoconf

// Configuration command

- We need to add additional flag for compiler which is   -stdlib=libstdc++   Older version of Mac OS X were using libstdc++ for compiling, but from version MAC OS X 10.9(June 10, 2013) this default settings has been changed tolibc++
  if we won't use this additional flag we would get following error:
  
// Final configuration (32 bit)
../configure --disable-debug --disable-dependency-tracking CFLAGS="-stdlib=libstdc++ -mmacosx-version-min=10.11 -isysroot /Developer/SDKs/MacOSX10.11.sdk" LDFLAGS="-stdlib=libstdc++ -Wl,-syslibroot,/Developer/SDKs/MacOSX10.11.sdk -Wl,-macosx_version_min -Wl,10.11" CXXFLAGS="-stdlib=libstdc++ -mmacosx-version-min=10.11 -isysroot /Developer/SDKs/MacOSX10.11.sdk" --with-wx-config=/opt/wxwidget/bin/wx-config

// Final configuration (64 bit)
../configure --disable-debug --disable-dependency-tracking CFLAGS="-m64 -stdlib=libstdc++ -mmacosx-version-min=10.11 -isysroot /Developer/SDKs/MacOSX10.11.sdk" LDFLAGS="-stdlib=libstdc++ -Wl,-syslibroot,/Developer/SDKs/MacOSX10.11.sdk -Wl,-macosx_version_min -Wl,10.11" CXXFLAGS="-m64 -stdlib=libstdc++ -mmacosx-version-min=10.11 -isysroot /Developer/SDKs/MacOSX10.11.sdk" --with-wx-config=/opt/wxwidget/bin/wx-config

// After configuration

make


// After compiling (IMPORTANT !)

- You have to manually copy sys-template folder (from downloaded Flamerobin folder) to your Application content folder.
   
  For example:  "/Applications/FlameRobin.app/Contents/SharedSupport/sys-templates)" 

  Or you will get error message below:

  

And you are done! Wooah.


Hope that it will be useful for someone next :-)

Thanks you Marius and whole Flamerobin team for working on this amazing tool!


With greetings Tomas Dvorak (Czech Republic, 18 years old student)