# [Solved]7x sys-libs/db installiert

## Schwaba

Hallo zusammen

wollte gerade mein ruby updaten

```
matthias@linux ~ $ emerge -upv ruby

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

Calculating dependencies... done!

[ebuild     U ] sys-libs/db-4.5.20_p2-r1 [4.5.20_p2] USE="java -bootstrap -doc -nocxx -tcl -test" 0 kB

[ebuild     U ] dev-lang/ruby-1.8.6_p287-r1 [1.8.6_p114] USE="berkdb gdbm ipv6 ssl threads -debug -doc -emacs -examples -rubytests -socks5 -tk -xemacs (-cjk%)" 0 kB

Total: 2 packages (2 upgrades), Size of downloads: 0 kB

```

 und dabei gibt es einen Fehler wen er sys-libs/db-4.5.20_p2-r1 auf [4.5.20_p2] updaten will.

```
 * ERROR: sys-libs/db-4.5.20_p2-r1 failed.

 * Call stack:

 *               ebuild.sh, line   49:  Called pkg_setup

 *               ebuild.sh, line 1254:  Called java-pkg-opt-2_pkg_setup

 *   java-pkg-opt-2.eclass, line   44:  Called java-pkg_init

 *     java-utils-2.eclass, line 2090:  Called java-pkg_switch-vm

 *     java-utils-2.eclass, line 2516:  Called die

 * The specific snippet of code:

 *                              die "Failed to determine VM for building."

 *  The die message:

 *   Failed to determine VM for building.

GENTOO_VM=  CLASSPATH="." JAVA_HOME=""

JAVACFLAGS="" COMPILER=""

```

Frage 1: Ist das ein Bug? Oder hat jemand eine Lösung?

```
matthias@linux ~ $ emerge -pv sys-libs/db

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

Calculating dependencies... done!

[ebuild     U ] sys-libs/db-4.5.20_p2-r1 [4.5.20_p2] USE="java -bootstrap -doc -nocxx -tcl -test" 0 kB

Total: 1 package (1 upgrade), Size of downloads: 0 kB
```

Nun habe ich gesehen das ich insgesammt 7 Versionen von sys-libs/db installiert habe. 

```
matthias@linux ~ $ emerge --info sys-libs/db

Portage 2.1.5.6 (default/linux/x86/2008.0/server, gcc-3.4.6, glibc-2.6.1-r0, 2.6.26 i686)

[...]

=================================================================

                        Package Settings

=================================================================

>>> Attempting to run pkg_info() for 'sys-libs/db-1.85-r3'

 * pkg_info() is not defined: 'db-1.85-r3.ebuild'

>>> Attempting to run pkg_info() for 'sys-libs/db-3.2.9_p2'

 * pkg_info() is not defined: 'db-3.2.9_p2.ebuild'

sys-libs/db-4.0.14-r3 was built with the following:

CXXFLAGS="-O2 -mcpu=i686 -pipe"

USE="java"

>>> Attempting to run pkg_info() for 'sys-libs/db-4.0.14-r3'

ERROR: ld.so: object '/lib/libsandbox.so' from LD_PRELOAD cannot be preloaded: ignored.

 * pkg_info() is not defined: 'db-4.0.14-r3.ebuild'

sys-libs/db-4.1.25_p1-r4 was built with the following:

CXXFLAGS="-O2 -mcpu=i686 -pipe"

USE="java"

>>> Attempting to run pkg_info() for 'sys-libs/db-4.1.25_p1-r4'

ERROR: ld.so: object '/lib/libsandbox.so' from LD_PRELOAD cannot be preloaded: ignored.

 * pkg_info() is not defined: 'db-4.1.25_p1-r4.ebuild'

sys-libs/db-4.2.52_p4-r2 was built with the following:

CXXFLAGS="-O2 -mcpu=i686 -pipe"

>>> Attempting to run pkg_info() for 'sys-libs/db-4.2.52_p4-r2'

 * pkg_info() is not defined: 'db-4.2.52_p4-r2.ebuild'

sys-libs/db-4.3.29-r2 was built with the following:

CXXFLAGS="-O2 -mcpu=i686 -pipe"

>>> Attempting to run pkg_info() for 'sys-libs/db-4.3.29-r2'

 * pkg_info() is not defined: 'db-4.3.29-r2.ebuild'

sys-libs/db-4.5.20_p2 was built with the following:

CXXFLAGS="-O2 -mcpu=i686 -pipe"

>>> Attempting to run pkg_info() for 'sys-libs/db-4.5.20_p2'

 * pkg_info() is not defined: 'db-4.5.20_p2.ebuild'

```

Frage 2: Muss das so sein? oder kann ich die älteren löschen?Last edited by Schwaba on Fri Sep 26, 2008 12:55 pm; edited 1 time in total

----------

## mrsteven

Wie es aussieht ist das ein Java-Problem, versuch mal Java richtig einzurichten: Java-HOWTO

Zur zweiten Frage:

Neuere Portage-Versionen deinstallieren nicht benötigte Slots bei einem emerge -a --depclean automatisch. Kannst ja mal schauen was da runter fliegen würde.

----------

## musv

Von db werden in manchen Fällen mehrere Versionen benötigt. Bei mir sind zur Zeit installiert: 

4.5.20

4.6.21

4.7.25

Manche Pakte benötigten auch noch die 1.85-x und die 3.2.x. Das Ganze kannst du für jede einzelne Version überprüfen:

```

equery depends =sys-libs/db-4.5.20_p2-r1

```

Bei mir benötigt z.B. python mit dem USE-Flag berkdb db-4.5. Bei den meisten Programmen sollte aber nur eine Mindestversion dastehen. Wenn du alle installierten db-Versionen abfragst, kannst du eventuell einige von denen deinstallieren, mußt aber hinterher die betroffenen Programme neucompilieren (revdep-rebuild).

----------

## Schwaba

War wirklich ein JAVA problem. nach einem neuen emerge funktionierts nun endlich wieder. Danke

und von den Installationen konnte ich wirklich einige entfernen, so das ich nun au nur no 3 habe. Auch hier ein fettes Danke

----------

