# 2 in 1 - slot mehrfach belegt - was tun?

## uhai

Hallo,

ich habe die folgende Fehlermeldung:

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

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

dev-libs/xerces-c:0

  ('ebuild', '/', 'dev-libs/xerces-c-3.0.0-r1', 'merge') pulled in by

    dev-libs/xerces-c required by world

    dev-libs/xerces-c required by ('installed', '/', 'games-puzzle/enigma-1.01', 'nomerge')

  ('installed', '/', 'dev-libs/xerces-c-2.7.0-r1', 'nomerge') pulled in by

    <dev-libs/xerces-c-3 required by ('installed', '/', 'games-strategy/glest-3.1.2', 'nomerge')

    (and 2 more)

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.

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

or refer to the Gentoo Handbook.

```

Also habe ich die /etc/portage/package.mask mit xerces-c  ergänzt.

```
<dev-libs/xerces-c-2.7.0-r1
```

oder

```
=dev-libs/xerces-c-2.7.0-r1
```

Leider ist das Problem damit nicht erledigt, es kommt immer noch die gleiche Fehlermeldung. Auch ein unmerge der älteren xerces-c hilft nicht...

Enigma und Glest würde ich aber gerne behalten...

Was kann ich noch tun?

uhai

----------

## Max Steel

Dein Rechner sagt folgendes:

world und enigma-1.01 brauchen xerces-c-3.0.0-r1

und 

glest-3.1.2 und 2 weitere brauchen xerces-c-2.7.0-r1

Das bedeutet also du musst enigma löschen oder wenigstens per USE-Flags dazu bringen kein xerces-c mehr zu brauchen, dann geht es wieder.

Vielleicht würde es auch klappen wenn du die world bearbeitest und xerces-c rausschmeißt.

----------

## uhai

Für enigma gibt es nur nls als use-flag. 

Glest und Enigma sind bereits seit einigen Monaten auf meiner Kiste vereint. Das Problem mit dem doppelt belegten slot ist aber neu  :Question: 

Ein 

```
emerge xercex-c
```

 installiert xerces-c3.0 ohne Probleme. Nur ist der slot trotzdem doppelt belegt und ein emerge -puDNt world läuft nicht....

Dann entferne ich Glest - mal sehen, ob es hilft.

uhai

----------

## Max Steel

Nein, du hast mich wahrsheinlich falsch verstanden.

Ich meine das du enigma oder den Eintrag in der /var/lib/portage/world für xercex-c entfernen musst.

----------

## uhai

Glest ist schon weg, revdep-rebuild gelaufen.Jetzt prüfe ich, ob revdep-rebuild noch etwas findet im zweiten Lauf, dann update ich world.

Trotzdem ist mir nicht klar, wieso das bisher  kein Problem war und jetzt ein Problem ist?

uhai

----------

## Max Steel

Hmm evtl wegen dem Eintrag in der world-file von xercex-c. Dabei gehe ich allerdings davon aus das es enigma egal ist welche Version installiert ist und glest sowie die 2 weiteren Pakete eine bestimmte Version benötigen.

Also dürfte es theoretisch kein Problem machen wenn du den Eintrag dev-libs/xerces-c aus /var/lib/portage/world löscht.

So und im Edit schau ich nach ob meine Vermutung richtig ist.

Edith:

enigma benötigt laut ebuild xercex-c ohne weitere Versionsangabe.

/usr/portage/games-puzzle/enigma/enigma-1.01.ebuild

```
RDEPEND="[...]

        dev-libs/xerces-c

        [...]"

DEPEND="${RDEPEND}

        [...]"

[...]
```

glest hingegen eine genaue Version:

/usr/portage/games-strategy/glest/glest

```
[...]

RDEPEND="[...]   

        <dev-libs/xerces-c-3

        [...]"

DEPEND="${RDEPEND}

        [...]"

[...]
```

----------

## furanku

Ergänzend könnte man noch hinzufügen, daß enigma seit gestern überhaupt erst mit xerces-c 3.0 comiliert ...  :Wink:  Siehe Bug report.

Vorher auf xerces-c 3.0 zu wechseln hätte also lediglich den Effekt gehabt, daß keines der Paktete installierbar gewesen wäre (zumindest auf amd64).

----------

