Compilation ART sous macos Monterey sur Apple M1

Bonjour à tous,
Je souhaiterais compiler ART sur mon macbook pro équipé d’une puce Apple M1pro tournant sous Monterey. Dans un premier temps, j’ai tenté de compiler rawtherapee, car cette opération est mieux documentée sur le net. La compilation se déroule sans erreur mais avec de nombreux warnings. Lorsque je lance l’exécutable, il ouvre une fenêtre vide et la console affiche les messages suivants :

(rawtherapee:929): GLib-GObject-WARNING **: 10:55:42.834: invalid cast from ‘GtkMenuBar’ to ‘GtkWindow’

(rawtherapee:929): Gtk-CRITICAL **: 10:55:42.834: gtk_window_add_accel_group: assertion ‘GTK_IS_WINDOW (window)’ failed

Si certains d’entre vous ont eu plus de succès que moi, je serais intéressé par la procédure qu’ils ont utilisée.
Merci pour votre aide.
JF

J’avais le même message sous Big Sur ces derniers temps.
J’ai mis à jour toutes dépendances (pour moi brew update suivi de brew upgrade) puis recompilé ART, et ça a fonctionné.
Donc commence par faire une mise à jour des dépendances.

Par contre pour le support de libraw, c’est compliqué, la version binaire disponible avec brew n’est pas assez récente, et je n’arrive pas à installer la version compilée moi-même (la compilation semble fonctionner, mais l’installation des 2 librairies générées ne marche pas).

Je viens de mettre à jour les dépendances mais, j’ai toujours la même erreur. Peut-être un problème avec Monterey.
Quelles options passes-tu à Cmake ? Voici ce que j’utilise :

cmake -DCMAKE_BUILD_TYPE=“release”
-DOSX_DEV_BUILD=“ON”
-DPROC_TARGET_NUMBER=“2”
-DCACHE_NAME_SUFFIX=“5.8-dev”
-DCMAKE_C_COMPILER=“clang”
-DCMAKE_CXX_COMPILER=“clang++”
-DWITH_LTO=“OFF”
-DLENSFUNDBDIR="/Applications/RawTherapee.app/Contents/Resources/share/lensfun"
-DCMAKE_OSX_DEPLOYMENT_TARGET=12.0
-DLOCAL_PREFIX:STRING="/opt/homebrew"
-DCMAKE_OSX_ARCHITECTURES=arm64

make -j$(sysctl -n hw.ncpu) install

sudo make macosx_bundle

Je vais tester avec ART; je pensais que ce serait plus simple avec rawtherapee, mais il semblerait que non.
Merci.

Pour ART j’utilise une commande très longue, je ne sais pas si tout est nécessaire, mais au moins ça fonctionne:

export PKG_CONFIG_PATH=/opt/homebrew/opt/libffi/lib/pkgconfig:/opt/homebrew/opt/expat/lib/pkgconfig && \
cmake  .. -DCMAKE_BUILD_TYPE="release" \
          -DPROC_TARGET_NUMBER="2" \
          -DCMAKE_OSX_ARCHITECTURES=arm64 \
          -DCACHE_NAME_SUFFIX="1.8-dev" \
          -DCMAKE_C_COMPILER="/opt/homebrew/Cellar/llvm/13.0.0_1/bin/clang" \
          -DCMAKE_CXX_COMPILER="/opt/homebrew/Cellar/llvm/13.0.0_1/bin/clang++" \
          -DWITH_LTO="OFF" \
          -DLENSFUNDBDIR="/Applications/RawTherapee.app/Contents/Resources/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="/opt/homebrew/lib/libomp.dylib" \
          -DOpenMP_CXX_FLAGS="-Wno-pass-failed -Wno-deprecated-register -Xpreprocessor -fopenmp /opt/homebrew/lib/libomp.dylib -I/opt/homebrew/include" \
          -DOpenMP_CXX_LIB_NAMES="libomp" \
          -DOpenMP_C_FLAGS="-Wno-pass-failed -Wno-deprecated-register -Xpreprocessor -fopenmp /opt/homebrew/lib/libomp.dylib -I/opt/homebrew/include" \
          -DCMAKE_VERBOSE_MAKEFILE:BOOL=OFF \
          -DCMAKE_EXE_LINKER_FLAGS="-L/opt/homebrew/opt/libffi/lib -L/opt/homebrew/lib" \
          -DCMAKE_AR="/opt/homebrew/Cellar/llvm/13.0.0_1/bin/llvm-ar" \
          -DCMAKE_RANLIB="/opt/homebrew/Cellar/llvm/13.0.0_1/bin/llvm-ranlib" \
          -DCMAKE_OSX_DEPLOYMENT_TARGET=11.6

Avec ta ligne de commande, la compilation de ART marche, mais j’ai le même problème qu’avec rawtherapee lorsque je lance l’exécutable : une fenêtre vide avec aucun menu.

Désolé… Peut-être à cause de Monterey alors.

Pas de souci, c’est déjà sympa d’avoir essayé. J’ai peur que effectivement ce soi dû à Monterey. Je vais tenter ma chance sur le forum de pixls.us; j’ai vu que tu avais échangé avec plusieurs personnes qui m’avaient l’air nettement plus compétentes que moi ! Sinon, j’attendrai …

1 « J'aime »

Suite à la dernière mise à jour de homebrew, j’ai toujours les mêmes messages d’erreur, mais ART marche. Je n’ai pas beaucoup testé mais je n’ai pas eu de plantage. Le bundle ne marche toujours pas mais le script macosx_bundle.sh semble écrit pour la version intel de homebrew.

J’ai aussi les mêmes messages d’erreur mais ART fonctionne (Mac mini M1 première génération, Big Sur).