Page 1 sur 1

[gcc-gcj] Impossible de compiler (résolu)

Publié : mer. 11 déc. 2013, 23:25
par Tristelune
Salut à tous,

suite à un souci j'aimerais actualiser tous mes paquets installés depuis AUR. Pour pdftk j'ai
besoin de mettre à jour gcc-gcj. Et ça m'a rappelé de mauvais souvenirs.... et ça n'a pas manqué! J'ai
actuellement la version 4.8.1-2. Si je compile, voici ce que j'obtiens:

Code : Tout sélectionner

gjar cf ../tools.zip .; \
cd ..)
(cd asm; \
gjar uf ../tools.zip .; \
cd ..)
rm -rf asm classes classes.lst asm.lst
make  all-am
make[5]: Entering directory '/tmp/yaourt-tmp-user/aur-gcc-gcj/src/gcc-4.8.2/build/x86_64-unknown-linux-gnu/libjava/classpath/tools'
Makefile:837: warning: overriding recipe for target 'gjdoc'
Makefile:755: warning: ignoring old recipe for target 'gjdoc'
make[5]: Nothing to be done for 'all-am'.
make[5]: Leaving directory '/tmp/yaourt-tmp-user/aur-gcc-gcj/src/gcc-4.8.2/build/x86_64-unknown-linux-gnu/libjava/classpath/tools'
make[4]: Leaving directory '/tmp/yaourt-tmp-user/aur-gcc-gcj/src/gcc-4.8.2/build/x86_64-unknown-linux-gnu/libjava/classpath/tools'
make[4]: Entering directory '/tmp/yaourt-tmp-user/aur-gcc-gcj/src/gcc-4.8.2/build/x86_64-unknown-linux-gnu/libjava/classpath'
true  DO=all multi-do # make
make[4]: Leaving directory '/tmp/yaourt-tmp-user/aur-gcc-gcj/src/gcc-4.8.2/build/x86_64-unknown-linux-gnu/libjava/classpath'
Makefile:410: recipe for target 'all-recursive' failed
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory '/tmp/yaourt-tmp-user/aur-gcc-gcj/src/gcc-4.8.2/build/x86_64-unknown-linux-gnu/libjava/classpath'
Makefile:10217: recipe for target 'all-recursive' failed
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory '/tmp/yaourt-tmp-user/aur-gcc-gcj/src/gcc-4.8.2/build/x86_64-unknown-linux-gnu/libjava'
Makefile:16850: recipe for target 'all-target-libjava' failed
make[1]: *** [all-target-libjava] Error 2
make[1]: Leaving directory '/tmp/yaourt-tmp-user/aur-gcc-gcj/src/gcc-4.8.2/build'
Makefile:885: recipe for target 'all' failed
make: *** [all] Error 2
==> ERROR: A failure occurred in build().
    Aborting...
==> ERROR: Makepkg was unable to build gcc-gcj.
==> Restart building gcc-gcj ? [y/N]
==> --------------------------------
J'ai essayé de plusieurs manières: tout d'abord sans changer le PKGBUILD et aussi en modifiant les options

Code : Tout sélectionner

options=('!libtool !makeflags')
et en même temps j'ai commenté la ligne

Code : Tout sélectionner

  CPPFLAGS=
et placé un

Code : Tout sélectionner

unset CPPFLAGS
juste avant le configure. Mais rien n'y fait. Je pense que certains ont dû le mettre à jour. Est-ce que ça a fonctionné chez vous? Est-ce que vous avez modifié quelque chose?

Merci!

Re: [gcc-gcj] Impossible de compiler

Publié : jeu. 12 déc. 2013, 23:16
par Elbarto
tu as utilisé le pkgbuild original de la version 4.8.2-1 ? :

https://aur.archlinux.org/packages/gc/gcc-gcj/PKGBUILD

je vois la mention "yaourt" dans ton log, essaie voir de faire en sorte que seul pacman soit utilisé, histoire d'être certain qu'il n'y ait pas de bugs introduits par une surcouche,

perso quand j'ai ce problème j'essaie d'abord de compiler à la main façon old-school ( le ./configure, make, mais pas de "make install", c'est juste pour voir si les options de compilation préconisées par le fichier README ou INSTALL présent dans l'archive des sources fonctionnent mieux que les commandes que le mainteneur archlinux a mis dans le pkgbuild )

sinon essaie de contacter le mainteneur de ce paquet si tu ne t'en sors pas ( l'adresse email est indiquée dans le pkgbuild, c'est que je fais quand je pense que le paquet est mal conçu )

Re: [gcc-gcj] Impossible de compiler

Publié : ven. 13 déc. 2013, 11:04
par FoolEcho
Elbarto a écrit :je vois la mention "yaourt" dans ton log, essaie voir de faire en sorte que seul pacman soit utilisé, histoire d'être certain qu'il n'y ait pas de bugs introduits par une surcouche,
Ce n'est pas en cause.

J'ai testé aussi la compilation (via makepkg) et j'aboutis à la même erreur.
Il y a un problème au niveau des FLAGS c'est à peu près certain de mon point de vue, mais après... (et je n'ai pas trop le temps de regarder ça: peut-être reprendre le PKGBUILD de gcc/gcc-multilib du dépôt officiel avec les patchs et prepare et voir si en prenant la suite -- configure,etc.-- de gcc-gcj ça passe).

Re: [gcc-gcj] Impossible de compiler

Publié : sam. 14 déc. 2013, 10:38
par Tristelune
Merci pour les retours. J'ai effectivement aussi essayé avec makepkg et ça plante de la même manière. Je
vais essayer selon la proposition de FoolEcho et dans un premier temps je vais mentionner le problème sur AUR.

Re: [gcc-gcj] Impossible de compiler

Publié : lun. 16 déc. 2013, 12:06
par Tristelune
Alors ça a progressé. Voir sur AUR (lien).

En fait, avant l'arrêt de la compilation, l'erreur suivante apparaît:

Code : Tout sélectionner

../../../../../.././libjava/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_FreetypeGlyphVector.c:45:30: fatal error: freetype/ftglyph.h: No such file or directory
 #include <freetype/ftglyph.h>
                              ^
compilation terminated.
Makefile:558: recipe for target 'gnu_java_awt_peer_gtk_FreetypeGlyphVector.lo' failed
make[6]: *** [gnu_java_awt_peer_gtk_FreetypeGlyphVector.lo] Error 1
C'est peu avant la fin. Il faut ensuite remplacer freetype par freetype2 dans les fichiers suivants:

Code : Tout sélectionner

- "src/gcc-4.8.2/libjava/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_FreetypeGlyphVector.c" aux lignes 45 et 46
- "src/gcc-4.8.2/libjava/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.c" aux lignes 42-45
Après ça passe. Quand j'aurai le temps je vais envoyer un patch au mainteneur. Je le laisserai juger s'il faut faire remonter le problème plus haut ou si c'est simplement lié à Arch.

Le problème est donc réglé, reste plus qu'à adapter sur AUR. Je m'occupe de regarder avec le mainteneur. Mais n'hésitez pas à me dire s'il faut procéder autrement.

Merci pour le coup de main!

EDIT: le paquet sur AUR a été mis à jour. Je viens de faire la mise à jour et ça passe sans problème.