# Versuche seit Tagen tuxkart zu emergen

## Piti

Hallo, und zwar versuche ich seit Tagen erfolglos tuxkart zu emergen.

Wenn ich emerge tuxkart mache saugt er zwar das Paket aus dem Netz, bricht aber bei make[1] mit einem Fehler ab.

```
g++  -march=athlon-xp -O2 -pipe -fomit-frame-pointer -ffast-math  -Wall  -o tuxkart  start_tuxkart.o tuxkart.o gfx.o material.o gui.o status.o sound.o utils.o isect.o guNet.o loader.o Track.o Driver.o Herring.o Explosion.o KartDriver.o Traffic.o PlayerDriver.o AutoDriver.o Projectile.o  -lplibsl -lplibssg -lplibpu -lplibfnt -lplibsg -lplibul -lglut -lGLU -lGL   -L/usr/X11R6/lib  -lSM -lICE -lpthread -lX11 -lXi -lXext -lXmu  -lm

gui.o(.text+0x4e5): In function `GUI::GUI[not-in-charge]()':

: undefined reference to `jsJoystick::jsJoystick[in-charge](int)'

gui.o(.text+0x835): In function `GUI::GUI[in-charge]()':

: undefined reference to `jsJoystick::jsJoystick[in-charge](int)'

gui.o(.text+0x101a): In function `GUI::joystickInput()':

: undefined reference to `jsJoystick::read(int*, float*)'

collect2: ld returned 1 exit status

make[1]: *** [tuxkart] Error 1

make[1]: Leaving directory `/var/tmp/portage/tuxkart-0.2.0/work/tuxkart-0.2.0/src'

make: *** [all-recursive] Error 1

!!! ERROR: games-action/tuxkart-0.2.0 failed.

!!! Function src_compile, Line 38, Exitcode 2

!!! emake failed
```

Hat da jemand eine Idee ?

Die anderen Games wie supertux und tuxracer gingen ohne Probleme.

----------

## boris64

keine idee, aber gleicher fehler.

----------

## pablo_supertux

Ich hab jetzt tuxkrart installiert. Vielleicht hast du seit langer Zeit kein emerge rsync gemacht oder so und die Sources sind fehlerhaft. Meine Version is 0.2.0. Vielleicht fehlt dir nur eine Library. Schau mal unter http://tuxkart.sourceforge.net/installation.html

----------

## boris64

 *pablo_supertux wrote:*   

> 
> 
> Vielleicht hast du seit langer Zeit kein emerge rsync gemacht oder so und die Sources sind fehlerhaft. Meine Version is 0.2.0. Vielleicht fehlt dir nur eine Library. Schau mal unter http://tuxkart.sourceforge.net/installation.html

 

nö, portage-baum ist aktuell, quellen habe ich schon von 2

verschiedenen servern heruntergeladen und auch meine version ist 0.2.0.

plib sollte auch i.o. sein (installiert ist plib-1.8.3) und sonstige programme

mit opengl-unterstützung kompilieren/funktionieren auch problemlos.

naja, bin mal weiterprobieren.

----------

## chino_

Habs auch gerade mal versucht, als ich den Thread hier gesehen hab.

Same error  :Sad: 

----------

## Piti

Auch gerade ncohmal auf dem Notebook versucht mit ganz frischer Installtation und gleicher Fehler.

----------

## Quotenjunkie

also ich habs jetzt auch mal installiert und es hat auch geklappt ich benutzte aber plib 1.6

----------

## chino_

 *Quotenjunkie wrote:*   

> also ich habs jetzt auch mal installiert und es hat auch geklappt ich benutzte aber plib 1.6

 

Jap, ich hab gerade plib auf 1.6 downgrade gemacht, und tuxkart hat erfolgreich kompiliert. Lag also auf jeden Fall daran.

----------

## Piti

Das heißt jetzt ?

Downgrade, installieren Upgrade oder wie ?

Wäre toll wenn mal jemand eine kleine Anleitung schreibt wie es genau zu installieren geht ohne das das System drunter leidet *g*

mfg

----------

## chino_

 *Piti wrote:*   

> 
> 
> Wäre toll wenn mal jemand eine kleine Anleitung schreibt wie es genau zu installieren geht ohne das das System drunter leidet *g*
> 
> 

 

emerge "<plib-1.8"

Damit installierst du plib 1.6 (und plib 1.8.x wird deinstalliert)

Dann einfach 

emerge tuxkart

And you're done!

Wenns nicht klappt, meld dich.

----------

## Piti

Läuft tuxkart dann auch mit der aktuellen Version von plib ?

Weil die macht er mir ja dann beim nächsten emerge -UD world wieder rauf *g*

Danke für den Tip.

----------

## Quotenjunkie

einfach passenden eintrag in /etc/portage/package.mask eintragen

http://www.gentoo.de/main/de/portage-2.0.50.xml

----------

## pablo_supertux

Wie ich schon sagte, plib fehlt, da steht in meinem Link. Ohne plib oder so geht das nicht.

"gui.o(.text+0x4e5): In function `GUI::GUI[not-in-charge]()': "

das ist eine typische Fehlermeldung des Linkers und deutet darauf hin, dass der Linker keine Ahnung hat, wo die Funktion GUI::GUI() sich befindet.

----------

## boris64

 *Quote:*   

> Wie ich schon sagte, plib fehlt, 

 

nicht ganz, unsere plib ist schlichtweg "zu neu" für tuxkart.

----------

## pablo_supertux

Das stimmt, ich hatte schon gemerkt, dass da eine Lib. fehlt (deshalb der Link auf der Homepage), dann war ich der webiste und unter download stand diese Libs. Komischerweise hatte ich sie schon auf meinem Rechner, ich weiß nicht warum.

----------

## Piti

Habe es jetzt so gemacht:

emerge "<plib-1.8" 

emerge tuxkart

emerge sync

emerge -UD world

etc-update

Und tuxkart läuft dann auch mit der aktuellen plib noch  :Wink: 

----------

## x000x

Da war jemand so freundlich , und hat diesen Fehler unter https://bugs.gentoo.org/show_bug.cgi?id=46372 gemeldet und auch gleich die Lösung mit bei gepackt.

Wem es zu umständlich ist, mit Hilfe des patches zu emergen kann auch die Zeile

```

        sed -i 's/-lplibul/-lplibul -lplibjs/' ${S}/configure.in || \

                        die "-sed configure failed"

```

 in tuxkart-0.2.0.ebuild (function src_unpack) hinzufügen.

hier mal die ganze function:

```

src_unpack() {

        unpack ${A}

        epatch ${FILESDIR}/01tuxkart.patch

        # apparently <sys/perm.h> doesn't exist on alpha

        if use alpha; then

                epatch ${FILESDIR}/tuxkart-0.2.0-alpha.patch

        fi

        sed -i \

                -e "s/-malign-double//; s/-O6//" ${S}/configure || \

                        die "sed configure failed"

        sed -i 's/-lplibul/-lplibul -lplibjs/' ${S}/configure.in || \

                        die "-sed configure failed"

}

```

----------

## boris64

jawoll, 1a.

funktioniert  :Wink: 

----------

