Difference between revisions of "MacOS"

From RawPedia
Jump to: navigation, search
(Compiling: from-scratch method added for macOS 10.14 Mojave / Xcode 10.1)
 
(9 intermediate revisions by 3 users not shown)
Line 6: Line 6:
  
 
== Dependencies ==
 
== Dependencies ==
 +
 
See the list of dependencies in the [[Linux#Dependencies|Compiling in Linux]] article.
 
See the list of dependencies in the [[Linux#Dependencies|Compiling in Linux]] article.
 +
 +
=== Homebrew ===
 +
 +
The following command installs dependencies for RawTherapee:
 +
<code>
 +
brew install gtk+3 gtkmm3 gtk-mac-integration adwaita-icon-theme libsigc++ little-cms2 libiptcdata fftw lensfun wget llvm cmake expat pkgconfig libomp
 +
</code>
  
 
=== MacPorts ===
 
=== MacPorts ===
 +
 
Tested on OS X 10.9 and newer.
 
Tested on OS X 10.9 and newer.
 
* '''Prerequisites:'''
 
* '''Prerequisites:'''
Line 27: Line 36:
  
 
=== libiconv patch ===
 
=== libiconv patch ===
libiconv.2.dylib must be patched, otherwise RawTherapee will crash on startup. The patch is available in [https://github.com/Beep6581/RawTherapee/blob/dev/tools/osx/libiconv_1.15_rt.patch `tools/osx/libiconv_1.15_rt.patch`]
+
 
 +
libiconv.2.dylib must be patched, otherwise RawTherapee will crash on startup. The patch is available in [https://github.com/Beep6581/RawTherapee/blob/dev/tools/osx/libiconv_1.15_rt.patch <code>tools/osx/libiconv_1.15_rt.patch</code>]
  
 
libiconv patching and compilation instructions:
 
libiconv patching and compilation instructions:
Line 47: Line 57:
 
</pre>
 
</pre>
  
=== Distribution Bundle Framework Library Versions in 5.4-dev ===
+
=== Distribution Bundle Framework Library Versions in 5.5-dev ===
  
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
 
! package
 
! package
! 5.4 version
+
! 5.5 version
 
! status
 
! status
! 5.4-dev version
+
! 5.6 version
 +
! status
 +
! 5.6-dev version
 
! status
 
! status
 
|-
 
|-
 
|gtk+
 
|gtk+
|3.22.26-168-g63f534f4b3 on branch gtk-3-22
+
| 3.22.26-168-g63f534f4b3
 +
| on branch <code>gtk-3-22</code>
 +
| 3.22.30
 +
| prev. 3.24.0
 +
| 3.24.8
 
|
 
|
|3.22.30
 
|prev. 3.24.0
 
 
|-
 
|-
 
|gtkmacintegration-gtk3
 
|gtkmacintegration-gtk3
|2.0.8
+
| 2.0.8
 
|
 
|
 
|
 
|
|-
 
|gdk
 
|3.22.26
 
 
|
 
|
 +
| 2.1.3-6-g3e1d4a3
 
|
 
|
 
|-
 
|-
Line 76: Line 88:
 
|2.36.11
 
|2.36.11
 
|
 
|
 +
|
 +
|
 +
|2.38.0-115-g0b959ad2e
 
|
 
|
 
|-
 
|-
Line 82: Line 97:
 
|PATCHED[https://github.com/Beep6581/RawTherapee/issues/3882#issuecomment-311703141]
 
|PATCHED[https://github.com/Beep6581/RawTherapee/issues/3882#issuecomment-311703141]
 
|
 
|
 +
|
 +
| 1.17.2
 +
| patch applies
 
|-
 
|-
 
|cairomm
 
|cairomm
 
| 1.12.2
 
| 1.12.2
 
|
 
|
 +
|
 +
|
 +
| cairomm-1-14
 
|
 
|
 
|-
 
|-
Line 91: Line 112:
 
| 1.14.10
 
| 1.14.10
 
|
 
|
 +
|
 +
|
 +
| 1.17.2
 
|
 
|
 
|-
 
|-
Line 97: Line 121:
 
|
 
|
 
| 1.42.4
 
| 1.42.4
|-
 
|pangocairo
 
| 1.40.12
 
 
|
 
|
 +
| 1.43.0
 
|
 
|
 
|-
 
|-
|pangoft2
+
|pangomm
| 1.40.12
+
| 2.40.1
 
|
 
|
 
|
 
|
|-
 
|pangomm
 
| 2.40.1
 
 
|
 
|
 +
| 2.42.0
 
|
 
|
 
|-
 
|-
Line 117: Line 137:
 
|
 
|
 
|
 
|
|-
 
|gdkmm
 
| 3.22.2
 
 
|
 
|
 +
| 3.24.1
 
|
 
|
 
|-
 
|-
Line 127: Line 145:
 
|
 
|
 
|
 
|
 +
|
 +
| ATK_2_31_92-5-ga2bff76
 +
| master
 
|-
 
|-
 
|atkmm
 
|atkmm
 
| 2.24.2
 
| 2.24.2
 +
|
 +
|
 +
|
 
|
 
|
 
|
 
|
Line 136: Line 160:
 
| 2.54.2
 
| 2.54.2
 
|
 
|
 +
|
 +
|
 +
| 2.59.3
 
|
 
|
 
|-
 
|-
 
|glibmm/giomm
 
|glibmm/giomm
 
| 2.54.1-15-ge9330a8e
 
| 2.54.1-15-ge9330a8e
| On branch glibmm-2-54
+
| On branch <code>glibmm-2-54</code>
 
|
 
|
|-
 
|gobject
 
| 2.53.4
 
 
|
 
|
 +
| 2.56.1
 
|
 
|
 
|-
 
|-
|gmodule
+
|libsigc++-2.0
| 2.53.4
+
| 2.10.0
 
|
 
|
 
|
 
|
|-
 
|gthread
 
| 2.54.2
 
 
|
 
|
 +
| 2.10.1
 
|
 
|
 
|-
 
|-
|libsigc++-2.0
+
|TIFF
| 2.10.0
+
| 4.0.9
 +
|
 
|
 
|
 
|
 
|
|-
 
|TIFF
 
| 4.0.9
 
 
|
 
|
 
|
 
|
Line 171: Line 192:
 
| 0.34.0
 
| 0.34.0
 
|
 
|
 +
|
 +
|
 +
| pixman-0.38.4
 
|
 
|
 
|-
 
|-
Line 176: Line 200:
 
| 1.6.33
 
| 1.6.33
 
|
 
|
 +
|
 +
|
 +
| 1.6.37
 
|
 
|
 
|-
 
|-
Line 182: Line 209:
 
|
 
|
 
|
 
|
 +
|
 +
| R_2_2_6-61-g5e2859f
 +
| master
 
|-
 
|-
 
|lcms2
 
|lcms2
Line 187: Line 217:
 
|
 
|
 
|
 
|
 +
|
 +
| lcms2.9rc1-45-g65c63bf
 +
| master
 
|-
 
|-
 
|JPEG
 
|JPEG
Line 192: Line 225:
 
|
 
|
 
|
 
|
 +
|
 +
| 8.4.0-4-g6c0fcb8
 +
| master
 
|-
 
|-
 
|harfbuzz
 
|harfbuzz
 
| 1.4.7
 
| 1.4.7
 
|
 
|
 +
|
 +
|
 +
| 2.4.0-3-gb292772e
 
|
 
|
 
|-
 
|-
Line 201: Line 240:
 
| 1.4.3
 
| 1.4.3
 
|
 
|
 +
|
 +
|
 +
| 1.5.3-4-gd536f78
 
|
 
|
 
|-
 
|-
Line 207: Line 249:
 
|
 
|
 
|
 
|
 +
|
 +
| 8.4.2
 +
| master
 
|-
 
|-
 
|lensfun
 
|lensfun
Line 212: Line 257:
 
|
 
|
 
|
 
|
 +
|
 +
| v0.3.95-221-g8de8fbb7
 +
| master
 
|-
 
|-
 
|libiconv2
 
|libiconv2
 
| 1.15
 
| 1.15
 
| [[#libiconv_patch|PATCHED]]
 
| [[#libiconv_patch|PATCHED]]
 +
|
 +
|
 +
|
 
|
 
|
 
|-
 
|-
 
|iptcdata
 
|iptcdata
 
| 1.0.4
 
| 1.0.4
 +
|
 +
|
 +
|
 
|
 
|
 
|
 
|
Line 227: Line 281:
 
|
 
|
 
|
 
|
 +
|
 +
| 2.13.1-81-gfd2e155
 +
| master
 
|-
 
|-
 
|freetype2
 
|freetype2
Line 232: Line 289:
 
|
 
|
 
|
 
|
 +
|
 +
| VER-2-10-0-15-gd74106e23
 +
| master
 
|-
 
|-
 
|libz
 
|libz
 
| 1.2.11
 
| 1.2.11
 
|
 
|
 +
|
 +
|
 +
| system libz
 
|
 
|
 
|-
 
|-
 
|graphite2
 
|graphite2
| 3.0.1
+
| 1.3.0.1
 
|
 
|
 +
|
 +
|
 +
| 1.3.13
 
|
 
|
 
|-
 
|-
 
|fftw
 
|fftw
 
| 3.3.7
 
| 3.3.7
 +
|
 +
|
 +
|
 
|
 
|
 
|
 
|
Line 251: Line 320:
 
| 3.2.1
 
| 3.2.1
 
|
 
|
 +
|
 +
|
 +
| v3.3-rc0-36-gd1e9b4b
 
|
 
|
 
|-
 
|-
Line 256: Line 328:
 
| 20160808_oss[https://github.com/Beep6581/RawTherapee/issues/3971#issuecomment-315643878]
 
| 20160808_oss[https://github.com/Beep6581/RawTherapee/issues/3971#issuecomment-315643878]
 
| REPLACES libomp from clang [https://github.com/Beep6581/RawTherapee/issues/3971]
 
| REPLACES libomp from clang [https://github.com/Beep6581/RawTherapee/issues/3971]
 +
|
 +
|
 +
|
 
|
 
|
 
|}
 
|}
  
 
== Compiling ==
 
== Compiling ==
 +
 
See the [[Linux#Compiling:_The_Manual_Way|Compiling in Linux]] article for instructions on how to '''clone''' the source code, choose a '''branch''' and how to configure '''CMake'''. Ignore the "Now you are ready to compile" code on that page and follow the code on this page.
 
See the [[Linux#Compiling:_The_Manual_Way|Compiling in Linux]] article for instructions on how to '''clone''' the source code, choose a '''branch''' and how to configure '''CMake'''. Ignore the "Now you are ready to compile" code on that page and follow the code on this page.
  
Line 272: Line 348:
  
 
If you wish to [https://developer.apple.com/support/code-signing/ codesign] your build, add your details to the CMake command:
 
If you wish to [https://developer.apple.com/support/code-signing/ codesign] your build, add your details to the CMake command:
: <code>-DCODESIGNID:STRING="Developer ID Application: Firstname Lastname (XXXXXXXXXX)"</code>
+
: <code>-DCODESIGNID="Developer ID Application: Firstname Lastname (XXXXXXXXXX)"</code>
The app and the generated <code>dmg</code> will be codesigned.
+
The app and the generated dmg (Apple Disk Image) will be codesigned.
 +
 
 +
To [https://developer.apple.com/documentation/security/notarizing_your_app_before_distribution/customizing_the_notarization_workflow?language=objc notarize] your codesigned build, include your app-specific notarial credential in the CMake command:
 +
: <code>-DNOTARY="--username user@mail.com --password abcd-efgh-ijkl-mnop"</code>
 +
The app and dmg will be notarized (scanned for malware) and stapled (have the notarization ticket attached).
  
 
=== Compile RawTherapee ===
 
=== Compile RawTherapee ===
 +
 
Now you are ready to compile:
 
Now you are ready to compile:
 
<pre style="white-space: pre-wrap">cd ~/repo-rt
 
<pre style="white-space: pre-wrap">cd ~/repo-rt
Line 293: Line 374:
 
</pre>
 
</pre>
 
<hr>
 
<hr>
 +
If you are compiling with homebrew dependencies w/llvm clang 8, use the following cmake command:
 +
<pre style="white-space: pre-wrap">
 +
export PKG_CONFIG_PATH=/usr/local/opt/libffi/lib/pkgconfig:/usr/local/opt/expat/lib/pkgconfig && \
 +
cmake  .. -DCMAKE_BUILD_TYPE="release" \
 +
          -DPROC_TARGET_NUMBER="2" \
 +
          -DCACHE_NAME_SUFFIX="5.6-dev" \
 +
          -DCMAKE_C_COMPILER="clang"\
 +
          -DCMAKE_CXX_COMPILER="clang++" \
 +
          -DWITH_LTO="ON" \
 +
          -DLENSFUNDBDIR="./share/lensfun" \
 +
          -DCMAKE_BUILD_TYPE=Release \
 +
          -DOpenMP_C_FLAGS=-fopenmp=libomp \
 +
          -DOpenMP_CXX_FLAGS=-fopenmp=libomp \
 +
          -DOpenMP_C_LIB_NAMES="libomp" \
 +
          -DOpenMP_CXX_LIB_NAMES="libomp" \
 +
          -DOpenMP_libomp_LIBRARY="/usr/local/lib/libomp.dylib" \
 +
          -DOpenMP_CXX_FLAGS="-Xpreprocessor -fopenmp /usr/local/lib/libomp.dylib -I/usr/local/include" \
 +
          -DOpenMP_CXX_LIB_NAMES="libomp" \
 +
          -DOpenMP_C_FLAGS="-Xpreprocessor -fopenmp /usr/local/lib/libomp.dylib -I/usr/local/include" \
 +
          -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \
 +
          -DCMAKE_EXE_LINKER_FLAGS="-L/usr/local/opt/libffi/lib -L/usr/local/lib" \
 +
          -DCMAKE_AR="/usr/local/Cellar/llvm/8.0.0/bin/llvm-ar" \
 +
          -DCMAKE_RANLIB="/usr/local/Cellar/llvm/8.0.0/bin/llvm-ranlib"
 +
</pre>
 +
 
=== From-Scratch Method ===
 
=== From-Scratch Method ===
* This [https://raw.githubusercontent.com/Benitoite/RTdeps/master/macbuildRT.sh] complete list of commands may optionally be used to perform a from-scratch build of RT and its dependencies on macOS 10.14.2 / Xcode 10.1.
+
 
 +
* This [https://raw.githubusercontent.com/Benitoite/RTdeps/master/macbuildRT.sh] complete list of commands may optionally be used to perform a from-scratch build of RawTherapee and its dependencies on macOS 10.14.5 / Xcode 10.2.
 
* A JDK[https://www.oracle.com/technetwork/java/javase/downloads/jdk11-downloads-5066655.html] must be installed.
 
* A JDK[https://www.oracle.com/technetwork/java/javase/downloads/jdk11-downloads-5066655.html] must be installed.
* Xcode 10.1 [https://developer.apple.com/xcode] must be installed
+
* Xcode 10.2 [https://developer.apple.com/xcode] must be installed
 
<hr>
 
<hr>
 +
 
=== Run and Share RawTherapee ===
 
=== Run and Share RawTherapee ===
 +
 
You will find a disk image in the build directory; this is the distribution release and can be run on any machine which meets the architecture requirements you specified in variants.conf earlier.
 
You will find a disk image in the build directory; this is the distribution release and can be run on any machine which meets the architecture requirements you specified in variants.conf earlier.
  
To provide the RawTherapee project with your build, please zip the .dmg and AboutThisBuild.txt files together. Name the zip file according to this template:
+
To provide the RawTherapee project with your build, please zip the dmg and AboutThisBuild.txt files together. Name the zip file according to this template:
 
: RawTherapee_OSX_'''<minimum supported macOS version>'''_64_'''<RawTherapee version>'''.zip
 
: RawTherapee_OSX_'''<minimum supported macOS version>'''_64_'''<RawTherapee version>'''.zip
 
for example if your build is made for macOS 10.12 and the version of RawTherapee is 5.2-dev-g1a2b3c4d, name it:
 
for example if your build is made for macOS 10.12 and the version of RawTherapee is 5.2-dev-g1a2b3c4d, name it:
 
: RawTherapee_OSX_10.12_64_5.2-dev-g1a2b3c4d.zip
 
: RawTherapee_OSX_10.12_64_5.2-dev-g1a2b3c4d.zip
 
Upload the zip archive to http://filebin.net/ and [https://github.com/Beep6581/RawTherapee/issues/new open a new issue on our GitHub page] with the link so that we can upload it to the website.
 
Upload the zip archive to http://filebin.net/ and [https://github.com/Beep6581/RawTherapee/issues/new open a new issue on our GitHub page] with the link so that we can upload it to the website.
 +
 +
==== macOS 10.15 ====
 +
 +
* To run RawTherapee on macOS 10.15 ''Catalina'' you must:
 +
** Copy the app to and run from the <code>/Applications</code> folder.
 +
** Add <code>/bin/sh</code> to System Preferences > Security & Privacy > Privacy > Full Disk Access. You will be prompted to automatically do this the first time you run the program.

Latest revision as of 19:09, 5 July 2019

This page details instructions for compiling RawTherapee on macOS systems. There are also separate pages with instructions for compiling on Linux and Windows. This guide details the what and how parts of compilation. For the why and explanations of these commands, for a list of dependencies, CMake options and other information, please refer to the detailed Linux article.

When in doubt, join us on IRC and ask a human!

For instructions on cloning the source, choosing branches, configuring CMake and doing the actual compilation, see these sections in the Linux guide. The information below is in addition to that.

Dependencies

See the list of dependencies in the Compiling in Linux article.

Homebrew

The following command installs dependencies for RawTherapee: brew install gtk+3 gtkmm3 gtk-mac-integration adwaita-icon-theme libsigc++ little-cms2 libiptcdata fftw lensfun wget llvm cmake expat pkgconfig libomp

MacPorts

Tested on OS X 10.9 and newer.

  • Prerequisites:
    • Apple's Xcode Developer Tools
    • Apple's Command Line Tools
    • MacPorts
      • Detailed instructions on setting up MacPorts and the developer tools are available on the MacPorts website.
      • The native system compiler provided by Apple is badly outdated and does not support OpenMP. Don't use it. Use the latest stable compiler from MacPorts - RawTherapee will run faster.
  • Configure MacPorts:
Add the following line to /opt/local/etc/macports/variants.conf
+quartz -x11 -gnome
  • Dependencies:
To install the dependencies, run from the terminal:
sudo port install git clang-3.9 gtk3 gtkmm3 gtk-osx-application-gtk3 adwaita-icon-theme libsigcxx2 lcms2 libiptcdata fftw-3-single lensfun
If compiling on Xcode 9.2 you will also need to do:
sudo port instal ld64 +ld64_xcode

libiconv patch

libiconv.2.dylib must be patched, otherwise RawTherapee will crash on startup. The patch is available in tools/osx/libiconv_1.15_rt.patch

libiconv patching and compilation instructions:

wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.15.tar.gz
tar xf libiconv-1.15.tar.gz
cd libiconv-1.15
wget https://raw.githubusercontent.com/Beep6581/RawTherapee/dev/tools/osx/libiconv_1.15_rt.patch
patch -p1 < libiconv_1.15_rt.patch
mkdir build
cd build
buildDir="$(pwd)"
../configure --prefix=/opt/local --disable-static 'CFLAGS=-arch x86_64 -mmacosx-version-min=10.9' 'LDFLAGS=-arch x86_64 -mmacosx-version-min=10.9' CXXFLAGS="-arch x86_64 -mmacosx-version-min=10.9"
make
make DESTDIR="$buildDir" install
cd /opt/local/lib
sudo cp ./libiconv.2.dylib ./libiconv.2.dylib.backup # backup MacPorts dylib
sudo cp "${buildDir}/opt/local/lib/libiconv.2.dylib" /opt/local/lib/libiconv.2.dylib

Distribution Bundle Framework Library Versions in 5.5-dev

package 5.5 version status 5.6 version status 5.6-dev version status
gtk+ 3.22.26-168-g63f534f4b3 on branch gtk-3-22 3.22.30 prev. 3.24.0 3.24.8
gtkmacintegration-gtk3 2.0.8 2.1.3-6-g3e1d4a3
gdk-pixbuf 2.36.11 2.38.0-115-g0b959ad2e
cairo 1.14.8 PATCHED[1] 1.17.2 patch applies
cairomm 1.12.2 cairomm-1-14
cairo-gobject 1.14.10 1.17.2
pango 1.40.12 1.42.4 1.43.0
pangomm 2.40.1 2.42.0
gtkmm 3.22.2 3.24.1
atk 2.26.1 ATK_2_31_92-5-ga2bff76 master
atkmm 2.24.2
glib/gio 2.54.2 2.59.3
glibmm/giomm 2.54.1-15-ge9330a8e On branch glibmm-2-54 2.56.1
libsigc++-2.0 2.10.0 2.10.1
TIFF 4.0.9
pixman 0.34.0 pixman-0.38.4
PNG 1.6.33 1.6.37
expat 2.2.4 R_2_2_6-61-g5e2859f master
lcms2 2.8 lcms2.9rc1-45-g65c63bf master
JPEG 9b 8.4.0-4-g6c0fcb8 master
harfbuzz 1.4.7 2.4.0-3-gb292772e
epoxy 1.4.3 1.5.3-4-gd536f78
pcre 8.4.1 8.4.2 master
lensfun 0.3.2.0 v0.3.95-221-g8de8fbb7 master
libiconv2 1.15 PATCHED
iptcdata 1.0.4
fontconfig 2.12.4 2.13.1-81-gfd2e155 master
freetype2 20.0.14 VER-2-10-0-15-gd74106e23 master
libz 1.2.11 system libz
graphite2 1.3.0.1 1.3.13
fftw 3.3.7
libffi 3.2.1 v3.3-rc0-36-gd1e9b4b
libiomp5 20160808_oss[2] REPLACES libomp from clang [3]

Compiling

See the Compiling in Linux article for instructions on how to clone the source code, choose a branch and how to configure CMake. Ignore the "Now you are ready to compile" code on that page and follow the code on this page.

If you want to upload a build or otherwise share it with others, you must use

-DPROC_TARGET_NUMBER="1"

and set the processor label manually by setting

-DPROC_LABEL="generic processor"

If you want to compile for yourself only, then use

-DPROC_TARGET_NUMBER="2"

and then the processor label would be irrelevant, you could skip it.

If you wish to codesign your build, add your details to the CMake command:

-DCODESIGNID="Developer ID Application: Firstname Lastname (XXXXXXXXXX)"

The app and the generated dmg (Apple Disk Image) will be codesigned.

To notarize your codesigned build, include your app-specific notarial credential in the CMake command:

-DNOTARY="--username user@mail.com --password abcd-efgh-ijkl-mnop"

The app and dmg will be notarized (scanned for malware) and stapled (have the notarization ticket attached).

Compile RawTherapee

Now you are ready to compile:

cd ~/repo-rt
rm -rf build
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE="release" \
      -DPROC_TARGET_NUMBER="1" \
      -DPROC_LABEL="generic processor" \
      -DCACHE_NAME_SUFFIX="5-dev" \
      -DCMAKE_C_COMPILER="clang-mp-3.9" \
      -DCMAKE_CXX_COMPILER="clang++-mp-3.9" \
      -DWITH_LTO="OFF" \
      -DLENSFUNDBDIR="./share/lensfun" \
      ..
make -j4 install
make macosx_bundle

If you are compiling with homebrew dependencies w/llvm clang 8, use the following cmake command:

export PKG_CONFIG_PATH=/usr/local/opt/libffi/lib/pkgconfig:/usr/local/opt/expat/lib/pkgconfig && \
cmake  .. -DCMAKE_BUILD_TYPE="release" \
          -DPROC_TARGET_NUMBER="2" \
          -DCACHE_NAME_SUFFIX="5.6-dev" \
          -DCMAKE_C_COMPILER="clang"\
          -DCMAKE_CXX_COMPILER="clang++" \
          -DWITH_LTO="ON" \
          -DLENSFUNDBDIR="./share/lensfun" \
          -DCMAKE_BUILD_TYPE=Release \
          -DOpenMP_C_FLAGS=-fopenmp=libomp \
          -DOpenMP_CXX_FLAGS=-fopenmp=libomp \
          -DOpenMP_C_LIB_NAMES="libomp" \
          -DOpenMP_CXX_LIB_NAMES="libomp" \
          -DOpenMP_libomp_LIBRARY="/usr/local/lib/libomp.dylib" \
          -DOpenMP_CXX_FLAGS="-Xpreprocessor -fopenmp /usr/local/lib/libomp.dylib -I/usr/local/include" \
          -DOpenMP_CXX_LIB_NAMES="libomp" \
          -DOpenMP_C_FLAGS="-Xpreprocessor -fopenmp /usr/local/lib/libomp.dylib -I/usr/local/include" \
          -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \
          -DCMAKE_EXE_LINKER_FLAGS="-L/usr/local/opt/libffi/lib -L/usr/local/lib" \
          -DCMAKE_AR="/usr/local/Cellar/llvm/8.0.0/bin/llvm-ar" \
          -DCMAKE_RANLIB="/usr/local/Cellar/llvm/8.0.0/bin/llvm-ranlib"

From-Scratch Method

  • This [4] complete list of commands may optionally be used to perform a from-scratch build of RawTherapee and its dependencies on macOS 10.14.5 / Xcode 10.2.
  • A JDK[5] must be installed.
  • Xcode 10.2 [6] must be installed

Run and Share RawTherapee

You will find a disk image in the build directory; this is the distribution release and can be run on any machine which meets the architecture requirements you specified in variants.conf earlier.

To provide the RawTherapee project with your build, please zip the dmg and AboutThisBuild.txt files together. Name the zip file according to this template:

RawTherapee_OSX_<minimum supported macOS version>_64_<RawTherapee version>.zip

for example if your build is made for macOS 10.12 and the version of RawTherapee is 5.2-dev-g1a2b3c4d, name it:

RawTherapee_OSX_10.12_64_5.2-dev-g1a2b3c4d.zip

Upload the zip archive to http://filebin.net/ and open a new issue on our GitHub page with the link so that we can upload it to the website.

macOS 10.15

  • To run RawTherapee on macOS 10.15 Catalina you must:
    • Copy the app to and run from the /Applications folder.
    • Add /bin/sh to System Preferences > Security & Privacy > Privacy > Full Disk Access. You will be prompted to automatically do this the first time you run the program.