# [libpng] Attention au passage 1.2 -> 1.4

## xaviermiller

https://forums.gentoo.org/viewtopic-t-827262-highlight-.html

Attention aux versions "testing" : la version 1.4 de libpng demande de faire des revdep-rebuild, car libpng 1.4 casse la compatibilité avec la 1.2.

Et libpng est utilisé par un grand nombre de paquets (dans mon cas 55 sur ma machine en ~amd64, j'attends le vedict pour le netbook).

A bon entendeur... salut !

----------

## ghoti

Ouaip, j'ai eu quelques angoisses aussi hier, genre kde qui ne démarrait plus !  :Wink: 

----------

## gregool

mince j'ai pas vu ce topic! je viens d'en ouvrir un! si un modo peut cloturer, je vais déplacer

----------

## Kazuya

Hello,

Bon ça ne dit pas si après le revdep-rebuild, tout rentre dans l'ordre, si ? 

Moi je n'ai pas encore passé à libpng-1.4 car j'ai un petit chromium-bin qui demande la v1.2 et donc ça bloque  :Smile:  finalement ça a du bon ce blocage ^^.

----------

## ghoti

 *gregool wrote:*   

> mince j'ai pas vu ce topic! je viens d'en ouvrir un! si un modo peut cloturer, je vais déplacer

 

Tant que personne n'a répondu, tu peux le supprimer toi-même !  :Wink: 

----------

## gregool

c'est vrai, donc :

suite a la MAJ libpng 1.2.43 vers 1.4.2 j'ai lancé un revdep-rebuild qui me signale 99 paquets cassés 

Problème ça bloque sur le 1er paquet qui est libgnomecanvas-python-2.28.0

```
checking for GTK+ - version >= 2.6.0... no

 *** Could not run GTK+ test program, checking why...

 *** The test program compiled, but did not run. This usually means

 *** that the run-time linker is not finding GTK+ or finding the wrong

 *** version of GTK+. If it is not finding GTK+, you'll need to set your

> *** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point

> *** to the installed location  Also, make sure you have run ldconfig if that

> *** is required on your system

> ***

> *** If you have an old version installed, it is best to remove it, although

> *** you may also be able to get things to work by modifying LD_LIBRARY_PATH

> configure: error: maybe you want the gtk-gnome-1-2 branch?

>

> !!! Please attach the following file when seeking support:

> !!! /var/tmp/portage/dev-python/libgnomecanvas-python-2.28.0/work/gnome-python-2.28.0/config.log

>  * ERROR: dev-python/libgnomecanvas-python-2.28.0 failed:

>  *   econf failed

>  *

>  * Call stack:

>  *     ebuild.sh, line   54:  Called src_compile

>  *   environment, line 5142:  Called gnome2_src_compile

>  *   environment, line 3103:  Called gnome2_src_configure

>  *   environment, line 3117:  Called econf '--disable-allbindings' '--enable-gnomecanvas'

>  *     ebuild.sh, line  544:  Called die 
```

j'ai essayé de ré-emerger gtk+ mais ça se plante aussi cette fois en me réclamant libpng12

Je tourne un peu en rond pour le coup, en attendant, j'ai ré-installé libpng12 sur un autre slot de façon a pouvoir utiliser la station quand même, mais les paquets qui ont libpng en dépendance, en l'occurrence 99 chez moi ne peuvent plus être mis à jour tant que je ne les aurais pas reconstruit avec libpng14.

j'ai essayé de recompiler libglade et libtool mais la compilation échoue, même après avoir lancé un lafilefixer.

est-ce que quelqu'un aurait une idée?

Merci,

----------

## guilc

recompiler cairo en premier. Mais revdep-rebuild devrait le mettre en premier... gnomecanvas ne devrait pas être le premier...

Sinon, emerge --sync et emerge libpng : un script pour fixer à la scrud les fichiers .la a été rajouté, ça devrait aider...

En tous cas chez moi, un revdep-rebuild plus tard, et tout tourne au poil

----------

## xaviermiller

Chez moi tout a bien fonctionné, 64 et 65 paquets à recompiler, et dans le bon ordre.

J'utilise portage 2.2, et aucun ebuild propriétaire, je tourne sous XFCE.

Si ça ne passe pas, faites "emerge --keep-going --resume", puis revdep-rebuild jusqu'au moment où tout est en ordre.

Ou s'il faut émerger un paquet, n'oubliez pas le "--oneshot" sinon vous polluerez votre "world".

----------

## gregool

ayé !

c'était pas de la tarte mais tout est rentré dans l'ordre, la raison pour laquelle ça ne fonctionnait pas était l'ordre des paquets.

en faisant d'abord emerge cairo pango gtk+ atk libglade qt-gui puis un revdep-rebuild c'est passé comme une lettre à la poste.

le tout est d'arriver a déterminer l'ordre soit même.

donc à l'arrivée c'est pas trop 'méchant' la mise à jour, juste un peu lourd dans mon cas 99 paquets ça prends quand même un certain temps.

----------

## RickyLoad

arf

Bon dans la douleur ,mais çà a l'air de passer !!

Je me suis pris un laconique ==> emerge: there are no ebuilds to satisfy "x11-libs/qt:3".

Etant sous kde 4 je comprenais pas trop.

Puis je suis tombé sur ce lien ==> https://forums.gentoo.org/viewtopic-t-823043-start-0.html

qui m'a fait faire un peu de ménage ( restait quelques trucs au niveau de qt3 )

Voilà si çà peut aider quelqu'un qui se retrouve dans la même "mouise" !!

Le revdep-rebuild est parti pour 22 paquets , mais avec ceux que j'ai fait à la mano je devais tourner aussi autour de 40.

Y'a plus qu'à ...............

----------

## bivittatus

Pour ma part, il a fallu que j'utilise le script /usr/sbin/./libpng-1.4.x-update.sh

Ca ne passait pas pour gdm, thunar et xfcepanel... :Evil or Very Mad: 

----------

## VinzC

Dans mon cas, ni le script ni revdep-rebuild n'ont assuré . J'attends le résultat de emerge -e world ...

EDIT: emerge -e world terminé ce dimanche matin. Commencé la mise à jour vendredi soir... Tout fonctionne maintenant. (Manquerait plus que ça, tiens!)

----------

## razer

Moi, j'ai été obligé de linker dynamiquement vers un /usr/lib/libpng-1.2.so, sinon des dépendances gnome ne passaient pas (flag -lpng12)

----------

## Kazuya

Hello,

Et ben moi c'est passé... 

> Razer,  j'ai eu le même soucis de dépendances avec certains paquets, mais après une petite recherche sur le forum, l’exécution de:

 *solution de flameeyes récupéré par NSaibot wrote:*   

> 
> 
> fgrep -e '-lpng12' --include '*.la' /usr/lib64 -rl | qfile -Cq -f - | sort -u | sudo xargs emerge -1v
> 
> 

 

à résolu le problème  :Smile: . 

Du coup, ce fut une migration réussis  :Smile: 

----------

## razer

Merci Kazuya, j'essaye çà à l'instant

----------

## Mickael

Je dis Bonjour tout le monde!!  :Smile: 

et je dis Post-it modo svp  :Smile:  ça mérite au moins ça

----------

## xaviermiller

Hé cool, mon premier message "post-it"é  :Smile: 

----------

## Leander256

Pratiquement deux semaines après c'est toujours aussi galère...

Mon emerge world a foiré au milieu parce que les ./configure ne trouvaient plus gtk, le revdep-rebuild faisait les paquets dans le désordre, pareil pour la commande de kazuya, j'ai aussi lancé le script bourrin pour réparer les fichiers .la ... Ça m'aura pris une bonne partie de la nuit, à lancer un truc puis un autre. Et histoire de bien me pourrir la vie, le pilote de ma 4965 a planté et kacpid s'est mis à me bouffer 90% d'un core donc j'ai rebooté et plus rien ne fonctionnait (même pas slim, encore moins mplayer...).

Bien sûr on peut s'attendre à ce que des trucs cassent quand on est en ~arch, mais là c'est quand même abusé. Si ils ne mettent pas au point une méthode correcte pour l'upgrade, le passage en stable va faire très mal.

----------

## VinzC

 *Leander256 wrote:*   

> Pratiquement deux semaines après c'est toujours aussi galère...
> 
> Mon emerge world a foiré au milieu parce que les ./configure ne trouvaient plus gtk, le revdep-rebuild faisait les paquets dans le désordre, pareil pour la commande de kazuya, j'ai aussi lancé le script bourrin pour réparer les fichiers .la ... Ça m'aura pris une bonne partie de la nuit, à lancer un truc puis un autre. Et histoire de bien me pourrir la vie, le pilote de ma 4965 a planté et kacpid s'est mis à me bouffer 90% d'un core donc j'ai rebooté et plus rien ne fonctionnait (même pas slim, encore moins mplayer...).
> 
> Bien sûr on peut s'attendre à ce que des trucs cassent quand on est en ~arch, mais là c'est quand même abusé. Si ils ne mettent pas au point une méthode correcte pour l'upgrade, le passage en stable va faire très mal.

 

C'est impossible d'y arriver. Il y aura toujours des casse-têtes de ce genre et il faudra bien les résoudre a mano. Dans ton cas, je préconiserais le emerge -e world et de surveiller la reconstruction en permanence car il n'y a pas de martingale dans ces cas-là. J'ai dû par exemple passer certains paquets de stable à testing car les liaisons qu'ils avaient avec la libpng ne compilaient pas avec la nouvelle. Heureusement, il n'y a eu que quelques cas, trois tout au plus. C'est chiant au possible mais ça a eu l'avantage de remettre toutes les pendules à l'heure, si je puis dire...

Bonne chance et bon courage  :Smile:  .

----------

## kernelsensei

Pour ceux qui auraient encore des problèmes (après avoir tenté en revdep-rebuild), essayez ça :

```
# emerge -av1 libpng

# emerge -aC =libpng-1.2.43-r3  (si encore présent)

# /usr/sbin/libpng-1.4.x-update.sh

# revdep-rebuild
```

Le script libpng-1.4.x-update.sh devrait arranger les choses

----------

## VinzC

 *kernelsensei wrote:*   

> Le script libpng-1.4.x-update.sh devrait arranger les choses

 

Justement, non, pas toujours -- par expérience perso  :Smile:  .

----------

## Kazuya

Hello,

C'est bizarre que vous ayez encore ce soucis, normalement il n'ya plus aucune raison:

Installer : libpng-1.4.2 et libpng-1.2.43-r3 (deux slot différents)

ensuite un petit coup de 

 *Quote:*   

> 
> 
> revdep-rebuild -i
> 
> lafilefixer --justfixit
> ...

 

Et chez moi ça marche nickel comme ça...  après déterminez les paquets qui déconnent et regardez sur le bugzilla si il n'ya pas un patch de disponible...

----------

## VinzC

 *Kazuya wrote:*   

> Hello,
> 
> C'est bizarre que vous ayez encore ce soucis, normalement il n'ya plus aucune raison [...]

 

Pour ma part, les soucis sont du passé, bien sûr. Mais je n'avais pas fait de mise à jour sur la machine depuis... un certain temps. Et là, sans doute, vu le nombre...

----------

## xaviermiller

Hello,

S'il le faut, je pourrais éditer mon message initial pour mette en évidence les solutions apportées  :Wink: 

----------

## Mickael

Pour ma part j'ai adopté la solution de gregool.

----------

## man in the hill

 *kernelsensei wrote:*   

> Pour ceux qui auraient encore des problèmes (après avoir tenté en revdep-rebuild), essayez ça :
> 
> ```
> # emerge -av1 libpng
> 
> ...

 

Fonctionne pour moi !

Thx

----------

## d2_racing

Avant je n'avais pas lancé ce script et je me suis rendu compte que c'est vraiment nécessaire  :Razz: 

----------

## netfab

Une procédure de mise à jour pour les utilisateurs stables trouvée sur le blog de Flameeyes : stable users' libpng update.

Chose à noter :

 *Quote:*   

> 
> 
> Supposedly, you should be able to properly complete the update without running the libpng-1.4.x-update.sh hack! (and this is important because that hack will create a number of problems on the longer run, so please try to avoid it!).
> 
> 

 

----------

## d2_racing

Méchante belle affaire hein ?

----------

## Poussin

 *netfab wrote:*   

> Une procédure de mise à jour pour les utilisateurs stables trouvée sur le blog de Flameeyes : stable users' libpng update.
> 
> Chose à noter :
> 
>  *Quote:*   
> ...

 

Passé sans trop de problème avec cette méthode, donc pas de libpng-1.4.x-update.sh. Le seul souci était un problème de compilation de nautilus via revdep-rebuild. J'ai du simplement désactiver CCACHE

edit: au link en fait, pas à la compilation

----------

## zuthos

Bonjour,

Je n'arrive pas non plus a me dépatouillé.

D'un coté, j'ai le soucis avec libpng

De l'autre quand j'essaye de le résoudre, j'ai ceci:

```
emerge: there are no ebuilds to satisfy "gnome-base/eel:2".

 * revdep-rebuild failed to emerge all packages.

 * you have the following choices:

 * - If emerge failed during the build, fix the problems and re-run revdep-rebuild.

 * - Use /etc/portage/package.keywords to unmask a newer version of the package.

 *   (and remove 5_order.rr to be evaluated again)

 * - Modify the above emerge command and run it manually.

 * - Compile or unmerge unsatisfied packages manually,

 *   remove temporary files, and try again.

 *   (you can edit package/ebuild list first)

 * To remove temporary files, please run:

 * rm /var/cache/revdep-rebuild/*.rr
```

Si quelqu'un avait une idée?

Merci d'avance

----------------------------

Re-edit

En fait, j'ai carrément viré nautilus et gnome-terminal. Cela a résolu le problème. Pour l'instant. Vu que ça compile encore

----------

## loopx

Un revdep-rebuild ne devrait pas poser de problème .. cela arrive régulièrement ... Pour ma part, j'ai créé un alias et hop, fini les ennuies  :Smile: 

```
alias update='nice -n 19 layman -S && nice -n 19 emerge --sync && nice -n 19 emerge oss-devel ; nice -n 19 emerge -uDNav world ; nice -n 19 etc-update ; nice -n 19 revdep-rebuild'
```

 :Cool: 

----------

## guilc

Bon, ben on va désticker hein. Ca fait un moment que libpng 1.5 est stable   :Twisted Evil: 

----------

