1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

SuperTuxKart 0.3 Alpha

Dieses Thema im Forum "OS X-Developer" wurde erstellt von xeno74, 06.04.07.

  1. xeno74

    xeno74 Gast

    Hallo Forum,

    ich gehöre dem Mac-Portiererteam von SuperTuxKart an.

    Wir bereiten gerade den Port für die Version 0.3 vor.

    Normales Kompilieren ist kein Problem mehr.

    Wir wollen in regelmäßigen Abständen Test-Versionen
    von STK bereitstellen und diese als AppBundle verteilen.

    Dafür möchte ich SuperTuxKart gerne statisch kompilieren (inkl. SDL + Freealut von OpenAL.org).

    Folgende Versuche habe ich bereits unternommen:

    1. Versuch:
    Code:
    ./configure --enable-static
    
    2. Versuch durch Eintrag von LDFLAGS in das Makefile:
    Code:
    LDFLAGS = -framework OpenAL /sw/lib/libalut.a `/sw/bin/sdl-config --static-libs`
    
    3. Versuch wieder durch einen Eintrag in das Makefile:
    Code:
    LDFLAGS =  -framework OpenAL -lalut /sw/lib/libSDLmain.a /sw/lib/libSDL.a -Wl,-framework,OpenGL -Wl,-framework,IOKit -Wl,-framework,Cocoa -Wl,-framework,QuickTime -Wl,-framework,ApplicationServices -Wl,-framework,Carbon -Wl,-framework,AudioToolbox -Wl,-framework,AudioUnit
    Das komische an der Sache ist, dass diese Einträge in den Makefiles zwar vom Linker zur Kenntnis genommen werden. Der Linker dann aber doch macht was er will.

    Wie schon geschrieben, dass "make" läuft immer sauber durch und der Linker verknüpft immer mit Shared Librarys.

    Dies überprüfe ich mit "otool -L supertuxkart":

    Code:
    supertuxkart:
            /System/Library/Frameworks/OpenAL.framework/Versions/A/OpenAL (compatibility version 1.0.0, current version 1.0.0)
            /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL (compatibility version 1.0.0, current version 1.0.0)
            /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (compatibility version 1.0.0, current version 275.0.0)
            /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (compatibility version 1.0.0, current version 11.0.0)
            /System/Library/Frameworks/QuickTime.framework/Versions/A/QuickTime (compatibility version 1.0.0, current version 12.0.0)
            /System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices (compatibility version 1.0.0, current version 22.0.0)
            /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon (compatibility version 2.0.0, current version 128.0.0)
            /System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox (compatibility version 1.0.0, current version 1.0.0)
            /System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit (compatibility version 1.0.0, current version 1.0.0)
            /System/Library/Frameworks/AGL.framework/Versions/A/AGL (compatibility version 1.0.0, current version 1.0.0)
            /sw/lib/libSDL-1.2.0.dylib (compatibility version 12.0.0, current version 12.0.0)
            /sw/lib/libvorbisfile.3.dylib (compatibility version 5.0.0, current version 5.0.0)
            /sw/lib/libmikmod.2.dylib (compatibility version 3.0.0, current version 3.4.0)
            /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.4.0)
            /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)
            /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 88.1.8)
    
    Was habe ich falsch gemacht?

    Wie werden die SDL-Libs statisch eingebunden?

    Gruß,

    Christian
     

Diese Seite empfehlen