# [skype] problème librairie (résolu)

## rolie31

Bonjour la communauté gentoo, depuis quelques semaines, j'ai mon kernel finalisé et gnome, le wifi et tout le reste qui tourne. Les optimisations de config me permettent maintenant de démarrer bien plus vite et d'utiliser mon pc un peu plus rapidement qu'avec ubuntu. Merci à tous ceux qui m'ont aidé pendant ma phase d'installation. Passons aux choses sérieuse, le problème que j'ai actuellement pour installer skype.

Je précise que j'ai synchronisé l'arbre de portage et fait une mise à jour système avec emerge --update --newuse --deep world.

Voici la trace de l'installation :

```

emerge -pv skype

These are the packages that would be merged, in order:

Calculating dependencies... done!

[ebuild     U ~] app-emulation/emul-linux-x86-baselibs-20120520 [20120127] USE="-development" 33,929 kB

[ebuild  N    ~] app-emulation/emul-linux-x86-db-20120520  USE="-development" 1,775 kB

[ebuild     U ~] app-emulation/emul-linux-x86-xlibs-20120520 [20120127] USE="opengl -development" 2,375 kB

[ebuild     U ~] app-emulation/emul-linux-x86-opengl-20120520 [20120127] USE="-development" 35,461 kB

[ebuild  N    ~] app-emulation/emul-linux-x86-medialibs-20120520  USE="-development" 10,200 kB

[ebuild  N    ~] app-emulation/emul-linux-x86-soundlibs-20120520-r1  USE="alsa pulseaudio -development" 6,942 kB

[ebuild  N    ~] app-emulation/emul-linux-x86-qtlibs-20120520  USE="-development" 16,618 kB

[ebuild  N    ~] net-im/skype-2.2.0.35-r99  USE="-pax_kernel -qt-static" 22,539 kB

Total: 8 packages (3 upgrades, 5 new), Size of downloads: 129,836 kB

!!! Multiple package instances within a single package slot have been pulled

!!! into the dependency graph, resulting in a slot conflict:

app-emulation/emul-linux-x86-xlibs:0

  (app-emulation/emul-linux-x86-xlibs-20120127::gentoo, installed) pulled in by

    ~app-emulation/emul-linux-x86-xlibs-20120127 required by (app-emulation/emul-linux-x86-gtklibs-20120127::gentoo, installed)

  (app-emulation/emul-linux-x86-xlibs-20120520::gentoo, ebuild scheduled for merge) pulled in by

    >=app-emulation/emul-linux-x86-xlibs-20120520 required by (net-im/skype-2.2.0.35-r99::gentoo, ebuild scheduled for merge)

    ~app-emulation/emul-linux-x86-xlibs-20120520 required by (app-emulation/emul-linux-x86-medialibs-20120520::gentoo, ebuild scheduled for merge)

app-emulation/emul-linux-x86-baselibs:0

  (app-emulation/emul-linux-x86-baselibs-20120520::gentoo, ebuild scheduled for merge) pulled in by

    ~app-emulation/emul-linux-x86-baselibs-20120520 required by (app-emulation/emul-linux-x86-qtlibs-20120520::gentoo, ebuild scheduled for merge)

    >=app-emulation/emul-linux-x86-baselibs-20120520 required by (net-im/skype-2.2.0.35-r99::gentoo, ebuild scheduled for merge)

    (and 4 more with the same problems)

  (app-emulation/emul-linux-x86-baselibs-20120127::gentoo, installed) pulled in by

    ~app-emulation/emul-linux-x86-baselibs-20120127 required by (app-emulation/emul-linux-x86-xlibs-20120127::gentoo, installed)

    (and 1 more with the same problem)

app-emulation/emul-linux-x86-opengl:0

  (app-emulation/emul-linux-x86-opengl-20120520::gentoo, ebuild scheduled for merge) pulled in by

    ~app-emulation/emul-linux-x86-opengl-20120520 required by (app-emulation/emul-linux-x86-qtlibs-20120520::gentoo, ebuild scheduled for merge)

  (app-emulation/emul-linux-x86-opengl-20120127::gentoo, installed) pulled in by

    ~app-emulation/emul-linux-x86-opengl-20120127 required by (app-emulation/emul-linux-x86-gtklibs-20120127::gentoo, installed)

It may be possible to solve this problem by using package.mask to

prevent one of those packages from being selected. However, it is also

possible that conflicting dependencies exist such that they are

impossible to satisfy simultaneously.  If such a conflict exists in

the dependencies of two different packages, then those packages can

not be installed simultaneously. You may want to try a larger value of

the --backtrack option, such as --backtrack=30, in order to see if

that will solve this conflict automatically.

For more information, see MASKED PACKAGES section in the emerge man

page or refer to the Gentoo Handbook.

```

Voici le contenu de mon package.keywords:

```

#skype

=net-im/skype-2.2.0.35-r99 ~amd64

#required by net-im/skype-2.2.0.35-r99[-qt-static], required by skype (argument)

=app-emulation/emul-linux-x86-qtlibs-20120520 ~amd64

#required by app-emulation/emul-linux-x86-xlibs-20120520, required by app-emulation/emul-linux-x86-medialibs-20120520, required by app-emulation/emul-linux-x86-soundlibs-20120520-r1, required by net-im/skype-2.2.0.35-r99, required by skype (argument)

=app-emulation/emul-linux-x86-baselibs-20120520 ~amd64

#required by app-emulation/emul-linux-x86-medialibs-20120520, required by app-emulation/emul-linux-x86-soundlibs-20120520-r1, required by net-im/skype-2.2.0.35-r99, required by skype (argument)

=app-emulation/emul-linux-x86-xlibs-20120520 ~amd64

#required by app-emulation/emul-linux-x86-soundlibs-20120520-r1, required by net-im/skype-2.2.0.35-r99, required by skype (argument)

=app-emulation/emul-linux-x86-medialibs-20120520 ~amd64

#required by app-emulation/emul-linux-x86-qtlibs-20120520, required by net-im/skype-2.2.0.35-r99[-qt-static], required by skype (argument)

=app-emulation/emul-linux-x86-opengl-20120520 ~amd64

#required by app-emulation/emul-linux-x86-medialibs-20120520, required by app-emulation/emul-linux-x86-qtlibs-20120520, required by net-im/skype-2.2.0.35-r99[-qt-static], required by skype (argument)

=app-emulation/emul-linux-x86-soundlibs-20120520-r1 ~amd64

#required by app-emulation/emul-linux-x86-medialibs-20120520, required by app-emulation/emul-linux-x86-soundlibs-20120520-r1, required by net-im/skype-2.2.0.35-r99, required by skype (argument)

=app-emulation/emul-linux-x86-db-20120520 ~amd64

```

J'ai essayé d'utiliser package.mask, package.unmask, package.keywords mais sans trop comprendre comment les utiliser (malgré ma lecture de http://www.gentoo.org/doc/en/handbook/handbook-amd64.xml?part=3&chap=3 et si c'est bien l'une des trois solutions qui résoudra mon problème.

J'ai ajouté systèmatiquement le même code dans ces fichiers:

```

=app-emulation/emul-linux-x86-xlibs-20120520

=app-emulation/emul-linux-x86-baselibs-20120520

=app-emulation/emul-linux-x86-opengl-20120520

```

puis tentative de emerge -pv skype mais sans succès.

J'ai ensuite tenté en modifiant la date à 20120527.

Il faudrait que je comprenne un peu plus à quoi serve ces fichiers et l'origine de l'erreur pour résoudre ce problème.

Merci d'avance pour votre aideLast edited by rolie31 on Fri Jun 08, 2012 9:03 pm; edited 3 times in total

----------

## guilc

Hello bon alors, plusieurs choses :

1) peux-tu mettre ton titre du topic en conformité avec les conventions de notre forum s'il te plaît ? Merci  :Smile: 

Parceque [emerge], ça n'indique rien à personne, même si c'est entre crochets  :Wink: 

2) Le sondage ça ne sert a rien, ce que tu veux, c'est résoudre le problème non ?

3) Venons-en au vif du sujet:

Ce que tu veux donc, c'est avoir skype en ~amd64, qui lui-même demande des libs 32bits en ~amd64.

Alors :

- relis bien les messages d'erreur, je t'en fais un bout, tu vas comprendre : tu as visiblement app-emulation/emul-linux-x86-gtklibs-20120127 installé, celui-ci demande une version de app-emulation/emul-linux-x86-xlibs-20120127 qui soit synchrone. Or, toi dans tes keywords que tu lui autorises, c'est la version 20120520.

Solution => autoriser la version 20120520 de app-emulation/emul-linux-x86-gtklibs

- Et ainsi de suite, gtklibs 20120127 qui demande xlibs 20120127 demande à son tour baselibs 20120127 alors que skype demande baselibs 20120520, etc...

Donc il faut que tu mettes au propre ton package.accept_keywords :

1) inutile de préciser des numéros de version, lister les packages suffit, portage prendra automatiquement la dernière version  ~amd64 sans que tu aie à le mettre à jour sans cesse

2) il faut préciser TOUTE la suite des libs binaires nécessaire, la visiblement il t'en manque, par ex gtklibs qui est en version antérieure, ce qui provoque ces conflits de versions installables.

Donc ce que ce que je te suggère c'est ça dans ton package.accept_keywords, toutes ces libs devant être synchrones en version :

```
$ cat /etc/portage/package.accept_keywords

net-im/skype ~amd64

app-emulation/emul-linux-x86-baselibs ~amd64

app-emulation/emul-linux-x86-compat ~amd64

app-emulation/emul-linux-x86-cpplibs ~amd64

app-emulation/emul-linux-x86-db ~amd64

app-emulation/emul-linux-x86-gstplugins ~amd64

app-emulation/emul-linux-x86-gtklibs ~amd64

app-emulation/emul-linux-x86-gtkmmlibs ~amd64

app-emulation/emul-linux-x86-jna ~amd64

app-emulation/emul-linux-x86-medialibs ~amd64

app-emulation/emul-linux-x86-motif ~amd64

app-emulation/emul-linux-x86-opengl ~amd64

app-emulation/emul-linux-x86-qtlibs ~amd64

app-emulation/emul-linux-x86-sdl ~amd64

app-emulation/emul-linux-x86-soundlibs ~amd64

app-emulation/emul-linux-x86-xlibs ~amd64

```

----------

## rolie31

merci pour ton aide.

J'ai supprimé les fichiers package.mask et package.unmask dont je ne comprenais pas vraiment l'utilité, puis j'ai supprimé le contenu du fichier package.keywords lié à skype et à ses dépendances et j'ai créé le fichier package.accept_keyword tel que tu l'as indiqué:

```

net-im/skype ~amd64 

 app-emulation/emul-linux-x86-baselibs ~amd64 

 app-emulation/emul-linux-x86-compat ~amd64 

 app-emulation/emul-linux-x86-cpplibs ~amd64 

 app-emulation/emul-linux-x86-db ~amd64 

 app-emulation/emul-linux-x86-gstplugins ~amd64 

 app-emulation/emul-linux-x86-gtklibs ~amd64 

 app-emulation/emul-linux-x86-gtkmmlibs ~amd64 

 app-emulation/emul-linux-x86-jna ~amd64 

 app-emulation/emul-linux-x86-medialibs ~amd64 

 app-emulation/emul-linux-x86-motif ~amd64 

 app-emulation/emul-linux-x86-opengl ~amd64 

 app-emulation/emul-linux-x86-qtlibs ~amd64 

 app-emulation/emul-linux-x86-sdl ~amd64 

 app-emulation/emul-linux-x86-soundlibs ~amd64 

 app-emulation/emul-linux-x86-xlibs ~amd64

```

J'ai ensuite mis à jour avec la commande suivante:

```

emerge --sync && emerge --update --newuse --deep world && emerge --depclean && revdep-rebuild

```

Puis lancer le emerge -pv skype.

Voici le résultat:

```

These are the packages that would be merged, in order:

Calculating dependencies... done!

[ebuild     U ~] app-emulation/emul-linux-x86-baselibs-20120520 [20120127] USE="-development" 33,929 kB

[ebuild  N    ~] app-emulation/emul-linux-x86-db-20120520  USE="-development" 1,775 kB

[ebuild     U ~] app-emulation/emul-linux-x86-xlibs-20120520 [20120127] USE="opengl -development" 2,375 kB

[ebuild     U ~] app-emulation/emul-linux-x86-opengl-20120520 [20120127] USE="-development" 35,461 kB

[ebuild  N    ~] app-emulation/emul-linux-x86-medialibs-20120520  USE="-development" 10,200 kB

[ebuild  N    ~] app-emulation/emul-linux-x86-soundlibs-20120520-r1  USE="alsa pulseaudio -development" 6,942 kB

[ebuild  N    ~] app-emulation/emul-linux-x86-qtlibs-20120520  USE="-development" 16,618 kB

[ebuild  N    ~] net-im/skype-2.2.0.35-r99  USE="-pax_kernel -qt-static" 22,539 kB

Total: 8 packages (3 upgrades, 5 new), Size of downloads: 129,836 kB

!!! Multiple package instances within a single package slot have been pulled

!!! into the dependency graph, resulting in a slot conflict:

app-emulation/emul-linux-x86-xlibs:0

  (app-emulation/emul-linux-x86-xlibs-20120127::gentoo, installed) pulled in by

    ~app-emulation/emul-linux-x86-xlibs-20120127 required by (app-emulation/emul-linux-x86-gtklibs-20120127::gentoo, installed)

  (app-emulation/emul-linux-x86-xlibs-20120520::gentoo, ebuild scheduled for merge) pulled in by

    >=app-emulation/emul-linux-x86-xlibs-20120520 required by (net-im/skype-2.2.0.35-r99::gentoo, ebuild scheduled for merge)

    ~app-emulation/emul-linux-x86-xlibs-20120520 required by (app-emulation/emul-linux-x86-medialibs-20120520::gentoo, ebuild scheduled for merge)

app-emulation/emul-linux-x86-baselibs:0

  (app-emulation/emul-linux-x86-baselibs-20120520::gentoo, ebuild scheduled for merge) pulled in by

    ~app-emulation/emul-linux-x86-baselibs-20120520 required by (app-emulation/emul-linux-x86-qtlibs-20120520::gentoo, ebuild scheduled for merge)

    >=app-emulation/emul-linux-x86-baselibs-20120520 required by (net-im/skype-2.2.0.35-r99::gentoo, ebuild scheduled for merge)

    (and 4 more with the same problems)

  (app-emulation/emul-linux-x86-baselibs-20120127::gentoo, installed) pulled in by

    ~app-emulation/emul-linux-x86-baselibs-20120127 required by (app-emulation/emul-linux-x86-xlibs-20120127::gentoo, installed)

    (and 1 more with the same problem)

app-emulation/emul-linux-x86-opengl:0

  (app-emulation/emul-linux-x86-opengl-20120520::gentoo, ebuild scheduled for merge) pulled in by

    ~app-emulation/emul-linux-x86-opengl-20120520 required by (app-emulation/emul-linux-x86-qtlibs-20120520::gentoo, ebuild scheduled for merge)

  (app-emulation/emul-linux-x86-opengl-20120127::gentoo, installed) pulled in by

    ~app-emulation/emul-linux-x86-opengl-20120127 required by (app-emulation/emul-linux-x86-gtklibs-20120127::gentoo, installed)

It may be possible to solve this problem by using package.mask to

prevent one of those packages from being selected. However, it is also

possible that conflicting dependencies exist such that they are

impossible to satisfy simultaneously.  If such a conflict exists in

the dependencies of two different packages, then those packages can

not be installed simultaneously. You may want to try a larger value of

the --backtrack option, such as --backtrack=30, in order to see if

that will solve this conflict automatically.

For more information, see MASKED PACKAGES section in the emerge man

page or refer to the Gentoo Handbook.

The following keyword changes are necessary to proceed:

#required by net-im/skype-2.2.0.35-r99[-qt-static], required by skype (argument)

=app-emulation/emul-linux-x86-qtlibs-20120520 ~amd64

#required by app-emulation/emul-linux-x86-xlibs-20120520, required by app-emulation/emul-linux-x86-medialibs-20120520, required by app-emulation/emul-linux-x86-soundlibs-20120520-r1, required by net-im/skype-2.2.0.35-r99, required by skype (argument)

=app-emulation/emul-linux-x86-baselibs-20120520 ~amd64

#required by skype (argument)

=net-im/skype-2.2.0.35-r99 ~amd64

#required by app-emulation/emul-linux-x86-medialibs-20120520, required by app-emulation/emul-linux-x86-soundlibs-20120520-r1, required by net-im/skype-2.2.0.35-r99, required by skype (argument)

=app-emulation/emul-linux-x86-xlibs-20120520 ~amd64

#required by app-emulation/emul-linux-x86-soundlibs-20120520-r1, required by net-im/skype-2.2.0.35-r99, required by skype (argument)

=app-emulation/emul-linux-x86-medialibs-20120520 ~amd64

#required by app-emulation/emul-linux-x86-qtlibs-20120520, required by net-im/skype-2.2.0.35-r99[-qt-static], required by skype (argument)

=app-emulation/emul-linux-x86-opengl-20120520 ~amd64

#required by app-emulation/emul-linux-x86-medialibs-20120520, required by app-emulation/emul-linux-x86-qtlibs-20120520, required by net-im/skype-2.2.0.35-r99[-qt-static], required by skype (argument)

=app-emulation/emul-linux-x86-soundlibs-20120520-r1 ~amd64

#required by app-emulation/emul-linux-x86-medialibs-20120520, required by app-emulation/emul-linux-x86-soundlibs-20120520-r1, required by net-im/skype-2.2.0.35-r99, required by skype (argument)

=app-emulation/emul-linux-x86-db-20120520 ~amd64

```

Le problème semble être le même qu'avant, j'ai oublié de faire quelque chose mais quoi ...

----------

## guilc

La mise à jour du systeme (emerge -auDN @world) ne te propose pas de mettre à jour emul-linux-x86-gtklibs ?

Si non, y a souci là...

[EDIT]

S'il ne te propose pas la maj de ce paquet, c'est que tu as un autre paquet qui demande spécifiquement cette version... => 

```
equery depends app-emulation/emul-linux-x86-gtklibs
```

----------

## rolie31

Bonjour,

la mise à jour système ne m'a pas proposé de mettre à jour gtklibs  :Sad: 

Voici ce que la commande indiquée donne:

```

equery depends app-emulation/emul-linux-x86-gtklibs

 * These packages depend on app-emulation/emul-linux-x86-gtklibs:

www-plugins/adobe-flash-11.2.202.235 (>=app-emulation/emul-linux-x86-gtklibs-20100409-r1)

www-plugins/nspluginwrapper-1.4.4-r1 (app-emulation/emul-linux-x86-gtklibs)

```

J'ai fait des emerge --unmerge des différentes libs qui posait problème puis tenter un emerge skype qui est ok.

J'ai aussi fait du tri dans mon répertoire /etc/portage, ça a peut être aidé.

Merci pour votre aide.

----------

