Forum darktable FR
[Résolu] dt 2.6 ne se compile pas sur debian sid/testing - Version imprimable

+- Forum darktable FR (https://forums.darktable.fr)
+-- Forum : Autour de darktable (https://forums.darktable.fr/forumdisplay.php?fid=95)
+--- Forum : Développement (https://forums.darktable.fr/forumdisplay.php?fid=100)
+--- Sujet : [Résolu] dt 2.6 ne se compile pas sur debian sid/testing (/showthread.php?tid=3579)



[Résolu] dt 2.6 ne se compile pas sur debian sid/testing - i blonchk - 21-04-19

Hola todos,
entre vendredi et dimanche, la compilation a cessé de fonctionner pour moi Huh  . Ces derniers jours, c'est un peu la valse dans les dépôts, avec des librairies et des outils de compilation qui bougent beaucoup. Je soupçonne un hoquet temporaire entre les multiples versions de  ces outils installés simultanément. Or, je ne maitrise pas suffisamment l'environnement pour forcer quoi que ce soit dans la liste de paquets. Me suis contenté de (tenter) résoudre les dépendances qui oscillent entre pur testing, testing/unstable, pur unstable et experimental Exclamation .

  • Hier, si j'activais clang avec update-alternatives --config gcc , ça plantait à la configuration avec un conflit de version sur OpenMP_C . 
  • Aujourd'hui, clang n'apparait même plus comme alternatives de gcc. Mais un binaire a bien pu passer à la trappe pendant mes manipulations de paquets.
  • Avec gcc, c'est la compilation du module darktable-2.6.2/src/common/bilateral.c qui s'écrase misérablement. 
  • J'ai également purgé gnome-shell pour bosser avec i3-wm. Darktable binaire fonctionne.
Les logs montrent que le compilateur C a bien changé après une action update-alternatives, mais pas le compilateur CXX qui est le même dans les deux cas. J'ignore si c'est conforme. Et surtout, j'ignore comment sortir de ce mauvais pas (sans forcément réinstaller tout le système  Dodgy )

Si ça vous parle, j'aimerai bien un point de vue ou un coup de main, car je suis un peu largué.
D'avance merci.

Hasta la proxima




Logs des builds
Les 2 fichiers de log sont disponibles ici:
https://www.swisstransfer.com/d/0ce179b8-daa2-4a79-bcf6-c04b7f0c03a7


apt-cache policy
Code :
sid: 990
testing: 500
experimental: 1



Environnement C

Code :
$ dpkg-query -l gcc-* clang* | grep -v '^un'

| État=Non/Installé/fichier-Config/dépaqUeté/échec-conFig/H=semi-installé/W=attend-traitement-déclenchements
|/ Err?=(aucune)/besoin Réinstallation (État,Err: majuscule=mauvais)
||/ Nom                       Version       Architecture Description
+++-=========================-=============-============-=====================================================
ii  clang                     1:8.0-48~exp1 amd64        C, C++ and Objective-C compiler (LLVM based)
ii  clang-7                   1:7.0.1-8     amd64        C, C++ and Objective-C compiler
ii  clang-8                   1:8-3         amd64        C, C++ and Objective-C compiler
ii  gcc-6-base:amd64          6.5.0-2       amd64        GCC, the GNU Compiler Collection (base package)
ii  gcc-7-doc                 7.2.0-1       all          documentation for the GNU compilers (gcc, gobjc, g++)
ii  gcc-8                     8.3.0-6       amd64        GNU C compiler
ii  gcc-8-base:amd64          8.3.0-6       amd64        GCC, the GNU Compiler Collection (base package)
ii  gcc-9                     9-20190402-1  amd64        GNU C compiler
ii  gcc-9-base:amd64          9-20190402-1  amd64        GCC, the GNU Compiler Collection (base package)
ii  gcc-doc                   5:7.2.0-2     amd64        documentation for the GNU compilers (gcc, gobjc, g++)
ii  gcc-doc-base              7.2.0-2       all          several GNU manual pages
ii  libgomp1:amd64            9-20190402-1  amd64        GCC OpenMP (GOMP) support library
ii  libomp-8-dev              1:8-3         amd64        LLVM OpenMP runtime - dev package
ii  libomp5-8:amd64           1:8-3         amd64        LLVM OpenMP runtime
ii  libopenmpt-dev:amd64      0.4.3-1       amd64        module music library based on OpenMPT -- development files
ii  libopenmpt-modplug1:amd64 0.4.3-1       amd64        module music library based on OpenMPT -- modplug compat library
ii  libopenmpt0:amd64         0.4.3-1       amd64        module music library based on OpenMPT -- shared library



RE: dt 2.6 ne se compile pas sur debian sid/testing - jpg54 - 22-04-19

Tu as regardé dans les .log du répertoire build ?
Tu pourrais aller sur FramaTeam dans le salon développement & compiler, tu pourrais y mettre une copie d'écran du terminal ou la coloration syntaxique aiderait !


RE: dt 2.6 ne se compile pas sur debian sid/testing - pascal - 22-04-19

> Or, je ne maitrise pas suffisamment l'environnement pour forcer quoi que ce soit dans la liste de paquets.

Le problème vient de là et de la suite. Tu as effectués des actons sur ton PC que je n'aurais même pas envisagé et pourtant je pense assez bien maîtriser mon environnement de dev Smile

Sinon, pour te rassurer (ou pas Smile tout compile parfaitement sur Debian sid/testing. Je suis en sid et doit compiler dt pratiquement tous les jours.


RE: dt 2.6 ne se compile pas sur debian sid/testing - i blonchk - 26-04-19

jpg54 et Pascal, merci pour vos pistes et points de vue. Pardonnez-moi cette réponse tardive, car je n'ai pu m'y remettre que cet après midi.

Citation :Sinon, pour te rassurer (ou pas) tout compile parfaitement sur Debian sid/testing. Je suis en sid et doit compiler dt pratiquement tous les jours.

Tien, c'est chez moi ? Me voila tout à fait rassuré Big Grin

Du coup, en guise de manoeuvre de la dernière chance, j'ai
  1. purgé la pile de dev (aux origines par trop hybrides), puis tous les packages résiduels contenant la chaine "-dev", toutes les dépendances devenues inutiles
  2. réinstallé la pile (origine: sid) selon le document https://redmine.darktable.org/projects/darktable/wiki/Building_darktable_26, en suivant toutes les dépendances ubuntu 18.04 (du reste, seul exemple). Je ne me souviens pas avoir dû ajouter ou modifier quoi que ce soit à la liste proposée (ou alors une dépendance évidente à corriger). 
  3. Depuis, ça marche, avec OpenCL (nvidia-legacy-390xx) en bonus.
    Testé: dt 2.6.2 github src release, avec exiv2, libgtk-3-0 3.24.5-1 (sid), libexiv2-dev 0.26-1 (experimental)
Je ne dois sans doute qu'à la rigueur du système de gestion de paquets debian d'être retombé aussi simplement sur mes pieds Smile


RE: dt 2.6 ne se compile pas sur debian sid/testing - i blonchk - 26-04-19

[MàJ]

Dans la foulée, je viens d'essayer de recompiler dt 2.6.2 avec libgtk-3.0 3.24.8-1 (experimental). Le binaire tourne, avec le comportement correct dans les listes du module de correction des objectifs canon/nikon (il manque encore le symbole dans le bouton inférieur de la liste, mais il fonctionne). Ceci dit et faute d'expérience suffisante, je préfère tout de même revenir au statu quo ante.

Les logs (colorés Wink ) du terminal de compilation pour chaque versions gtk-3 sont dans cette archive.

Belle fin de semaine.