OS X/fr: Difference between revisions
m (→Compilation) |
(updated) |
||
| Line 1: | Line 1: | ||
Cette page détaille les instructions pour compiler RawTherapee sur les systèmes ''' | 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/fr|Linux]] et [[Windows/fr|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/fr|Linux]]. | ||
En cas de doute, [[IRC/fr | joigniez nous sur IRC]] et demandez à un humain ! | En cas de doute, [[IRC/fr | joigniez nous sur IRC]] et demandez à un humain ! | ||
| Line 8: | Line 8: | ||
Voir la liste des dépendances dans le chapitre [[Linux/fr#Dépendances|Compilation avec Linux]]. | Voir la liste des dépendances dans le chapitre [[Linux/fr#Dépendances|Compilation avec Linux]]. | ||
=== MacPorts === | |||
* Outils | Testé sur OS X 10.9 et suivants | ||
* MacPorts | * '''Prérequis :''' | ||
* | ** Outils du développeur Xcode d'Apple | ||
** Outils en ligne de commande d'Apple | |||
** MacPorts | |||
* Configurer | *** 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: | : Ajouter la ligne suivante à /opt/local/etc/macports/variants.conf: | ||
:: <code> | :: <code>+quartz -x11 -gnome</code> | ||
* Dépendances | * '''Dépendances''' | ||
: Pour installer les indépendances, exécuter : | : Pour installer les indépendances, exécuter dans un terminal : | ||
:: <code>sudo port install | :: <code>sudo port install git clang-3.9 gtk3 gtkmm3 gtk-osx-application-gtk3 adwaita-icon-theme libsigcxx2 lcms2 libiptcdata fftw-3-single</code> | ||
=== 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/ | 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`] | ||
Instructions pour le patchage et la compilation de libiconv : | Instructions pour le patchage et la compilation de libiconv : | ||
<pre style="white-space: pre-wrap"> | <pre style="white-space: pre-wrap"> | ||
wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1. | wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.15.tar.gz | ||
tar xf libiconv-1. | tar xf libiconv-1.15.tar.gz | ||
cd libiconv-1. | cd libiconv-1.15 | ||
wget https://raw.githubusercontent.com/Beep6581/RawTherapee/ | wget https://raw.githubusercontent.com/Beep6581/RawTherapee/dev/tools/osx/libiconv_1.15_rt.patch | ||
patch -p1 < libiconv_1. | patch -p1 < libiconv_1.15_rt.patch | ||
mkdir build | mkdir build | ||
cd build | cd build | ||
buildDir="$(pwd)" | buildDir="$(pwd)" | ||
../configure --prefix=/opt/local --disable-static 'CFLAGS=-arch x86_64 -mmacosx-version-min=10. | ../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 | ||
make DESTDIR="$buildDir" install | make DESTDIR="$buildDir" install | ||
| Line 59: | Line 60: | ||
Vous êtes maintenant prêt à compiler : | Vous êtes maintenant prêt à compiler : | ||
<pre style="white-space: pre-wrap">cd ~/repo-rt | <pre style="white-space: pre-wrap">cd ~/repo-rt | ||
rm -rf build | rm -rf build | ||
mkdir build && cd build | mkdir build && cd build | ||
cmake -DCMAKE_BUILD_TYPE="release" \ | cmake -DCMAKE_BUILD_TYPE="release" \ | ||
-DPROC_TARGET_NUMBER="1" \ | -DPROC_TARGET_NUMBER="1" \ | ||
-DPROC_LABEL="generic processor" \ | -DPROC_LABEL="generic processor" \ | ||
-DCACHE_NAME_SUFFIX=" | -DCACHE_NAME_SUFFIX="5-dev" \ | ||
-DCMAKE_C_COMPILER="clang-mp-3. | -DCMAKE_C_COMPILER="clang-mp-3.9" \ | ||
-DCMAKE_CXX_COMPILER="clang++-mp-3. | -DCMAKE_CXX_COMPILER="clang++-mp-3.9" \ | ||
- | -DWITH_LTO="OFF" \ | ||
.. | .. | ||
make - | make -j4 install | ||
make macosx_bundle | make macosx_bundle | ||
</pre> | </pre> | ||
| Line 77: | Line 78: | ||
Pour fournir votre compilation au projet RawTherapee, veuillez zipper ensemble les fichiers .dmg et AboutThisBuild.txt. Nommer le fichier zip selon ce modèle : | 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_'''< | : RawTherapee_OSX_'''<version minimum supportée par macOS>'''_64_'''<RawTherapee version et branche>'''.zip | ||
par exemple si votre compilation est pour | par exemple si votre compilation est pour macOS 10.12 et la version de RawTherapee est 5.1-dev-g1a2b3c4d, nommez le : | ||
: RawTherapee_OSX_10. | : RawTherapee_OSX_10.12_64_5.1-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. | ||
Revision as of 09:07, 6 May 2017
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.
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
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
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.
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" \
..
make -j4 install
make macosx_bundle
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.1-dev-g1a2b3c4d, nommez le :
- RawTherapee_OSX_10.12_64_5.1-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.