Anzeige:
Ergebnis 1 bis 4 von 4

Thema: code mit sdl will nicht kompilieren

  1. #1
    Registrierter Benutzer
    Registriert seit
    02.10.2002
    Beiträge
    55

    code mit sdl will nicht kompilieren

    c++ -O2 -O0 -g3 -Wall -I/usr/include/GL -I/usr/include/SDL -D_REENTRANT -fno-exceptions -fno-check-new -o darkwood_linux dwoglinit.o main.o -lGL -lGLU /usr/lib/libSDL.so -lm -L/usr/X11R6/lib -lX11 -lXext -ldl
    /usr/lib/libSDL.so: undefined reference to `pthread_create'
    /usr/lib/libSDL.so: undefined reference to `pthread_cancel'
    /usr/lib/libSDL.so: undefined reference to `sem_destroy'
    /usr/lib/libSDL.so: undefined reference to `sem_wait'
    /usr/lib/libSDL.so: undefined reference to `sem_post'
    /usr/lib/libSDL.so: undefined reference to `sem_init'
    /usr/lib/libSDL.so: undefined reference to `pthread_sigmask'
    /usr/lib/libSDL.so: undefined reference to `sem_trywait'
    /usr/lib/libSDL.so: undefined reference to `pthread_mutexattr_init'
    /usr/lib/libSDL.so: undefined reference to `sem_getvalue'
    /usr/lib/libSDL.so: undefined reference to `pthread_join'
    collect2: ld returned 1 exit status

    folgende fehler kommen, wenn ich mein programm kompilieren will (es verwendet sdl, welches gerade erst mit apt-get install libsdl-dev installiert wurde)

    ich kann mit den fehler überhaupt nix anfangen, deshalb würde ich mir sehr freuen, wenn ihr mir helfen könntet

  2. #2
    Registrierter Benutzer
    Registriert seit
    08.11.2002
    Ort
    Hennef
    Beiträge
    106
    hallo,

    sieht nach problemen mit Threads aus.
    versuche mal dem gcc noch das mitzugeben:
    -lpthread

    hier ein kleines Progrämschen ob bei dir überhaupt Threads
    unterstützt werden.

    Code:
    #include<stdio.h>
    #include<unistd.h>
    #include<stdlib.h>
    
    int main() {
    
    printf("Posix Version ist set to %ld\n" , _POSIX_VERSION);
    
    if (_POSIX_VERSION < 199506L) {
    
            if (_POSIX_C_SOURCE >= 199506L) {
                    printf("Keine unterstützung für POSIX1003.1c Threads");
            }
            else {
                    printf("Versuche mit -D_POSIX_C_SOURCE=199506L\n");
            }
    }
    else{
    
            printf("System unterstützt POSIX1003.1c threads\n");
            #ifdef _POSIX_THREAD_PRIORITY_SCHEDULING
                    printf("inclusive unterstützung für priority Scheduling\n");
            #else
                    printf("aber unterstützt nicht priority Scheduling\n");
            #endif
    }
    
    exit (EXIT_SUCCESS);
    
    }
    gruß
    Geändert von pik7 (19-05-2003 um 19:58 Uhr)

  3. #3
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477

    Thumbs up SDL-config

    Wenn du mit SDL arbeitest, bietet es sich an, sdl-config zu verwenden.
    Das kennt nämlich die nötigen Pfade für Include und Link Direktiven

    sdl-config --libs
    und
    sdl-config --cflags

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  4. #4
    Registrierter Benutzer
    Registriert seit
    02.10.2002
    Beiträge
    55
    hab jetzt mal die ausgabe von sdl-config --libs verwendet und jetzt gehts
    hatte im projekt halt die alten einstellungen drin, die auf meinem alten system funktioniert haben
    danke für den tipp

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •