Difference between revisions of "MacOS/fr"

From RawPedia
Jump to: navigation, search
(Astuce: updated)
(Compilation: updated)
 
(2 intermediate revisions by the same user not shown)
Line 34: Line 34:
 
=== Patch libiconv ===
 
=== Patch libiconv ===
  
libiconv doit être patché, sinon, RawTherapee plantera au démarrage. Le patch est disponible ici:  [https://github.com/Beep6581/RawTherapee/blob/dev/tools/osx/libiconv_1.15_rt.patch `tools/osx/libiconv_1.15_rt.patch`]
+
libiconv doit être patché, sinon, RawTherapee plantera au démarrage. Le patch est disponible ici:  [https://github.com/Beep6581/RawTherapee/blob/dev/tools/osx/libiconv_1.15_rt.patch <code>tools/osx/libiconv_1.15_rt.patch</code>]
  
 
Instructions pour le patchage et la compilation de libiconv :  
 
Instructions pour le patchage et la compilation de libiconv :  
Line 68: Line 68:
 
|gtk+
 
|gtk+
 
| 3.22.26-168-g63f534f4b3
 
| 3.22.26-168-g63f534f4b3
| on branch gtk-3-22
+
| sur la branche <code>gtk-3-22</code>
 
| 3.22.30
 
| 3.22.30
 
| prev. 3.24.0
 
| prev. 3.24.0
Line 164: Line 164:
 
|glibmm/giomm
 
|glibmm/giomm
 
| 2.54.1-15-ge9330a8e
 
| 2.54.1-15-ge9330a8e
|sur la branche glibmm-2-54
+
|sur la branche <code>glibmm-2-54</code>
 
|
 
|
 
|
 
|
Line 191: Line 191:
 
|
 
|
 
|
 
|
| `pixman-0.38.4`
+
|pixman-0.38.4
 
|
 
|
 
|-
 
|-
 
|PNG
 
|PNG
| `1.6.33`
+
|1.6.33
 
|
 
|
 
|
 
|
 
|
 
|
| `1.6.37`
+
|1.6.37
 
|
 
|
 
|-
 
|-
 
|expat
 
|expat
| `2.2.4`
+
|2.2.4
 
|
 
|
 
|
 
|
 
|
 
|
 
| R_2_2_6-61-g5e2859f
 
| R_2_2_6-61-g5e2859f
| `maître`
+
|maître
 
|-
 
|-
 
|lcms2
 
|lcms2
| `2.8`
+
|2.8
 
|
 
|
 
|
 
|
 
|
 
|
 
| lcms2.9rc1-45-g65c63bf
 
| lcms2.9rc1-45-g65c63bf
| `maître`
+
|maître
 
|-
 
|-
 
|JPEG
 
|JPEG
| `9b`
+
|9b
 
|
 
|
 
|
 
|
 
|
 
|
| `8.4.0-4-g6c0fcb8`
+
|8.4.0-4-g6c0fcb8
 
| maître
 
| maître
 
|-
 
|-
Line 345: Line 345:
 
Si vous désirez [https://developer.apple.com/support/code-signing/ signer le code] de votre compilation, ajoutez vos éléments dans la commande CMake :
 
Si vous désirez [https://developer.apple.com/support/code-signing/ signer le code] de votre compilation, ajoutez vos éléments dans la commande CMake :
 
: <code>-DCODESIGNID:STRING="Identification du développeur : Nom prénom (XXXXXXXXXX)"</code>
 
: <code>-DCODESIGNID:STRING="Identification du développeur : Nom prénom (XXXXXXXXXX)"</code>
L'application et le <code>dmg</code> généré seront signés.
+
L'application et le dmg (Apple Disk Image) générés seront signés.
 +
 
 +
Pour [https://developer.apple.com/documentation/security/notarizing_your_app_before_distribution/customizing_the_notarization_workflow?language=objc certifier] votre compilation signée, incluez vos crédits dans la commande CMake :
 +
: <code>-DNOTARY="--username user@mail.com --password abcd-efgh-ijkl-mnop"</code>
 +
L'application et le dmg seront certifiés (scannés pour détecter les malwares) et annexés (le ticket de certification sera joint).
  
 
=== Compiler RawTherapee ===
 
=== Compiler RawTherapee ===
Line 405: Line 409:
 
: RawTherapee_OSX_10.12_64_5.2-dev-g1a2b3c4d.zip
 
: RawTherapee_OSX_10.12_64_5.2-dev-g1a2b3c4d.zip
 
Téléverser l'archive zip vers http://filebin.net/ et [https://github.com/Beep6581/RawTherapee/issues/new open a new issue on our GitHub page] avec le lien afin que nous puissions le téléverser sur le site web.
 
Téléverser l'archive zip vers http://filebin.net/ et [https://github.com/Beep6581/RawTherapee/issues/new open a new issue on our GitHub page] avec le lien afin que nous puissions le téléverser sur le site web.
 +
 +
==== macOS 10.15 ====
 +
 +
* Pour exécuter RawTherapee sur macOS 10.15 ''Catalina'' vous devez :
 +
** Copier l'application dans le dossier <code>/Applications</code><code>/Applications</code> et l'éxécuter depuis ce dossier.
 +
** Ajouter <code>/bin/sh</code> dans Préférences système > Sécurité et vie privée > Vie privée > Accès à tout le disque. Vous serez invité à faire cela automatiquement lors du premier démarrage du programme.

Latest revision as of 09:59, 8 July 2019

Cette page détaille les instructions pour compiler RawTherapee sur les systèmes macOS. Il existe aussi une page séparée pour la compilation sur Linux et Windows. Cette page détaille le Quoi et le Comment de la compilation. Pour le Pourquoi et les explications de ces commandes, pour avoir la liste des dépendances, les options de CMake et d'autres informations, veuillez vous référer l'article détaillée de Linux.

En cas de doute, joigniez nous sur IRC et demandez à un humain !

Pour obtenir des instructions sur le clonage de la source, le choix de la branche, la configuration de CMake et la réalisation de la compilation, voir ces chapitres dans le guide Linux. Les informations ci-dessous viennent en complément.

Dépendances

Voir la liste des dépendances dans le chapitre Compilation avec Linux.

Fait maison

La commande suivante installe les dépendances de 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

Testé sur OS X 10.9 et suivants

  • Prérequis :
    • Outils du développeur Xcode d'Apple
    • Outils en ligne de commande d'Apple
    • MacPorts
      • Des instructions détaillées concernant la configuration des MacPorts et les outils du développeur sot disponibles sur le site Web des MacPorts.
      • Le compilateur système natif fourni par Apple est très obsolète et ne supporte pas Open MP. Ne pas l'utiliser. Prendre le dernier compilateur stable de MacPorts, RawTherapee sera plus rapide.
  • Configurer MacPorts :
Ajouter la ligne suivante à /opt/local/etc/macports/variants.conf:
+quartz -x11 -gnome
  • Dépendances
Pour installer les indépendances, exécuter dans un terminal :
sudo port install git clang-3.9 gtk3 gtkmm3 gtk-osx-application-gtk3 adwaita-icon-theme libsigcxx2 lcms2 libiptcdata fftw-3-single lensfun
Si vous compilez avec Xcode 9.2 vous devez aussi faire :
sudo port instal ld64 +ld64_xcode

Patch libiconv

libiconv doit être patché, sinon, RawTherapee plantera au démarrage. Le patch est disponible ici: tools/osx/libiconv_1.15_rt.patch

Instructions pour le patchage et la compilation de libiconv :

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

Version des bibliothèques fournies avec RawTherapee 5.4-dev

paquetage version 5.5 état version 5.6 état version 5.6-dev état
gtk+ 3.22.26-168-g63f534f4b3 sur la branche 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 le patch s'applique
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 maître
atkmm 2.24.2
glib/gio 2.54.2 2.59.3
glibmm/giomm 2.54.1-15-ge9330a8e sur la branche 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 maître
lcms2 2.8 lcms2.9rc1-45-g65c63bf maître
JPEG 9b 8.4.0-4-g6c0fcb8 maître
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 maître
lensfun 0.3.2.0 v0.3.95-221-g8de8fbb7 maître
libiconv2 1.15 PATCHE
iptcdata 1.0.4
fontconfig 2.12.4 2.13.1-81-gfd2e155 maître
freetype2 20.0.14 VER-2-10-0-15-gd74106e23 maître
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] REMPLACE clang par libomp

Compilation

Voir les instructions dans l'article Compilation avec Linux pour savoir comment cloner le code source, choisir une branche et configurer CMake. Ignorer le code "Maintenant, vous êtes prêt pour la compilation : " de cette page mais suivre le code ci-dessous.

Si vous désirez téléverser une compilation ou éventuellement la partager avec d'autres, vous devez utiliser :

-DPROC_TARGET_NUMBER="1"

et paramétrer manuellement le label du processeur en entrant :

-DPROC_LABEL="generic processor"

Si vous désirez compiler pour vous même uniquement, alors utiliser :

-DPROC_TARGET_NUMBER="2"

et le label du processeur est alors inutile, vous pouvez l'ignorer.

Si vous désirez signer le code de votre compilation, ajoutez vos éléments dans la commande CMake :

-DCODESIGNID:STRING="Identification du développeur : Nom prénom (XXXXXXXXXX)"

L'application et le dmg (Apple Disk Image) générés seront signés.

Pour certifier votre compilation signée, incluez vos crédits dans la commande CMake :

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

L'application et le dmg seront certifiés (scannés pour détecter les malwares) et annexés (le ticket de certification sera joint).

Compiler RawTherapee

Vous êtes maintenant prêt à compiler :

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

Si vous compilez avec les dépendances maison w/llvm clang 8, utiliser la commande cmake suivante :

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"

Méthode depuis zéro

  • Cette [3] liste complète de commandes peut éventuellement être utilisée pour réaliser la compilation de RawTherapee et de ses dépendances depuis zéro sur macOS 10.14.2 / Xcode 10.1.
  • JDK[4] doit être installé.
  • Xcode 10.1 [5] doit être installé.

Exécutez et partagez RawTherapee

Vous trouverez une image disque dans le répertoire de compilation ; c'est l'édition de distribution qui peut être exécutée sur n'importe quelle machine qui répond aux exigences de l'architecture spécifiées auparavant dans le fichier variants.conf.

Pour fournir votre compilation au projet RawTherapee, veuillez zipper ensemble les fichiers .dmg et AboutThisBuild.txt. Nommer le fichier zip selon ce modèle :

RawTherapee_OSX_<version minimum supportée par macOS>_64_<RawTherapee version et branche>.zip

par exemple si votre compilation est pour macOS 10.12 et la version de RawTherapee est 5.2-dev-g1a2b3c4d, nommez le :

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

Téléverser l'archive zip vers http://filebin.net/ et open a new issue on our GitHub page avec le lien afin que nous puissions le téléverser sur le site web.

macOS 10.15

  • Pour exécuter RawTherapee sur macOS 10.15 Catalina vous devez :
    • Copier l'application dans le dossier /Applications/Applications et l'éxécuter depuis ce dossier.
    • Ajouter /bin/sh dans Préférences système > Sécurité et vie privée > Vie privée > Accès à tout le disque. Vous serez invité à faire cela automatiquement lors du premier démarrage du programme.