sdlBasic für CAANOO


Isendrak

Still Fresh
Joined
Jul 3, 2010
Messages
12
Age
32
Da GLBasic immer noch keine Compiler Option für den CAANOO hat, hab ich mal nach alternativen gesucht und bin dabei auf sdlBasic gestossen. (http://www.sdlbasic.altervista.org/main/index.php)

Es gibt zwar keine CAANOO-Binaries des Interpreters, aber da es welche für GP2X/WIZ gibt, dachte ich 'n Port/Recompile für CAANOO müsste machbar sein.

Hab's auch fast geschafft, aber jetzt meckert der Compiler dass er "-lSDL" nich findet:
Code:
<i>
</i>/opt/GPH_SDK/tools/gcc-4.2.4-glibc-2.7-eabi/bin/../lib/gcc/arm-gph-linux-gnueabi/4.2.4/../../../../arm-gph-linux-gnueabi/bin/ld: cannot find -lSDL
collect2: ld returned 1 exit status
make: *** [../../bin/sdlBrt] Fehler 1
Bisher hab ich immerhin rausgefunden, dass die Static Version der SDL (libSDL.a) benötigt wird, hab aber nur die Dynamic Version (libSDL.so) finden können. :confused:??

Hab auch versucht, die SDL vom Sourcecode zu kompilieren, aber es nich hinbekommen (Compilerausgabe, siehe Anhang). :dash:


Lange Rede, kurzer Sinn:
Falls jemand die Static Versionen der SDL für den CAANOO hat, würde das sehr helfen. ;)
 

Attachments

carli

Still Fresh
Joined
Jul 18, 2010
Messages
445
Ganz einfach: Symlinke deine /usr/lib/libSDL-1.2.so.irgendwelche_Zahlen einfach auf /usr/lib/libSDL.so, dann findet der -lSDL auch
 

Isendrak

Still Fresh
Joined
Jul 3, 2010
Messages
12
Age
32
Bringt leider nix.

Wenn ich versuch die libSDL.so (mit -Bdynamic -lSDL oder -l:libSDL.so) zu verwenden gibt mir der Compiler das hier:
/opt/GPH_SDK/tools/gcc-4.2.4-glibc-2.7-eabi/bin/../arm-gph-linux-gnueabi/sys-root/usr/lib/crt1.o: In function `_start':
init.c:(.text+0x2c): undefined reference to `__libc_csu_fini'
init.c:(.text+0x34): undefined reference to `__libc_csu_init'
SDLengine/SDLengine.a(SDLengine.o): In function `terminate':
/tmp/sdlBasic/src/sdlBrt/SDLengine/SDLengine.c:454: undefined reference to `Mix_CloseAudio'
/tmp/sdlBasic/src/sdlBrt/SDLengine/SDLengine.c:455: undefined reference to `atexit'
SDLengine/SDLengine.a(SDLengine.o): In function `initialize':
/tmp/sdlBasic/src/sdlBrt/SDLengine/SDLengine.c:257: undefined reference to `atexit'
/tmp/sdlBasic/src/sdlBrt/SDLengine/SDLengine.c:265: undefined reference to `Mix_OpenAudio'
/tmp/sdlBasic/src/sdlBrt/SDLengine/SDLengine.c:273: undefined reference to `Mix_AllocateChannels'
SDLengine/SDLengine.a(file_io.o): In function `loadmusic':
/tmp/sdlBasic/src/sdlBrt/SDLengine/file_io.c:256: undefined reference to `Mix_FreeMusic'
/tmp/sdlBasic/src/sdlBrt/SDLengine/file_io.c:257: undefined reference to `Mix_LoadMUS'
SDLengine/SDLengine.a(file_io.o): In function `loadzipsound':
/tmp/sdlBasic/src/sdlBrt/SDLengine/file_io.c:189: undefined reference to `Mix_FreeChunk'
/tmp/sdlBasic/src/sdlBrt/SDLengine/file_io.c:190: undefined reference to `Mix_LoadWAV_RW'
SDLengine/SDLengine.a(file_io.o): In function `loadsound':
/tmp/sdlBasic/src/sdlBrt/SDLengine/file_io.c:156: undefined reference to `Mix_FreeChunk'
/tmp/sdlBasic/src/sdlBrt/SDLengine/file_io.c:157: undefined reference to `Mix_LoadWAV_RW'
SDLengine/SDLengine.a(sound.o): In function `speedmusic':
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:390: undefined reference to `Mix_SetSynchroValue'
SDLengine/SDLengine.a(sound.o): In function `volumemusic':
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:378: undefined reference to `Mix_VolumeMusic'
SDLengine/SDLengine.a(sound.o): In function `fademusic':
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:351: undefined reference to `Mix_VolumeMusic'
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:354: undefined reference to `Mix_VolumeMusic'
SDLengine/SDLengine.a(sound.o): In function `fademusichandler':
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:362: undefined reference to `Mix_VolumeMusic'
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:362: undefined reference to `Mix_VolumeMusic'
SDLengine/SDLengine.a(sound.o):/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:364: more undefined references to `Mix_VolumeMusic' follow
SDLengine/SDLengine.a(sound.o): In function `fademusichandler':
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:365: undefined reference to `Mix_HaltMusic'
SDLengine/SDLengine.a(sound.o): In function `stopmusic':
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:298: undefined reference to `Mix_HaltMusic'
SDLengine/SDLengine.a(sound.o): In function `rewindmusic':
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:334: undefined reference to `Mix_RewindMusic'
SDLengine/SDLengine.a(sound.o): In function `resumemusic':
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:322: undefined reference to `Mix_ResumeMusic'
SDLengine/SDLengine.a(sound.o): In function `pausemusic':
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:310: undefined reference to `Mix_PauseMusic'
SDLengine/SDLengine.a(sound.o): In function `positionmusic':
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:287: undefined reference to `Mix_SetMusicPosition'
SDLengine/SDLengine.a(sound.o): In function `playmusic':
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:268: undefined reference to `Mix_PlayMusic'
SDLengine/SDLengine.a(sound.o): In function `soundchannels':
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:256: undefined reference to `Mix_AllocateChannels'
SDLengine/SDLengine.a(sound.o): In function `positionsound':
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:245: undefined reference to `Mix_SetPosition'
SDLengine/SDLengine.a(sound.o): In function `vumetersound':
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:234: undefined reference to `Mix_Playing'
SDLengine/SDLengine.a(sound.o): In function `resumesound':
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:222: undefined reference to `Mix_Resume'
SDLengine/SDLengine.a(sound.o): In function `pausesound':
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:210: undefined reference to `Mix_Pause'
SDLengine/SDLengine.a(sound.o): In function `stopsound':
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:199: undefined reference to `Mix_HaltChannel'
SDLengine/SDLengine.a(sound.o): In function `volumesound':
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:188: undefined reference to `Mix_Volume'
SDLengine/SDLengine.a(sound.o): In function `playfreqsound':
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:169: undefined reference to `Mix_PlayChannelTimed'
SDLengine/SDLengine.a(sound.o): In function `playsound':
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:143: undefined reference to `Mix_PlayChannelTimed'
SDLengine/SDLengine.a(sound.o): In function `deletesound':
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:70: undefined reference to `Mix_FreeChunk'
SDLengine/SDLengine.a(sound.o): In function `copysound':
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:104: undefined reference to `Mix_FreeChunk'
/tmp/sdlBasic/src/sdlBrt/SDLengine/sound.c:105: undefined reference to `Mix_QuickLoad_RAW'
SDLengine/SDLengine.a(video_mpeg.o): In function `deletempeg':
/tmp/sdlBasic/src/sdlBrt/SDLengine/video_mpeg.c:109: undefined reference to `Mix_OpenAudio'
/tmp/sdlBasic/src/sdlBrt/SDLengine/video_mpeg.c:113: undefined reference to `Mix_AllocateChannels'
SDLengine/SDLengine.a(video_mpeg.o): In function `loadmpeg':
/tmp/sdlBasic/src/sdlBrt/SDLengine/video_mpeg.c:57: undefined reference to `Mix_CloseAudio'
collect2: ld returned 1 exit status
make: *** [../../bin/sdlBrt] Fehler 1
Ansonsten nur "cannot find -lSDL".

Wie bereits erwähnt, brauch ich die libSDL.a (Static Library), die ich aber nirgends auftreiben konnte.

P.S.: Hab inzwischen die GP2X/WIZ Version von sdlBasic mit GINGE zum laufen gebracht, aber 'n natives Binary für'n CAANOO wär mir schon lieber. (Besonders weil GINGE den Touchscreen nich unterstützt...)
 

Ziz

Advanced Member
Joined
Jan 15, 2006
Messages
3,584
Mal ne Gegenfrage: Wieso möchtest du es statisch kompilieren? Sind die onboard SDL Libs so scheiße?
 

KidPaddle

Member
Joined
May 14, 2006
Messages
385
Location
Germany
Mhm, laut dem Log - File fehlen dem Compiler die Dateien GL/gl.h und GL/glu.h und deswegen geht es nicht weiter. Die Bereitstellung andere SDL - Libraries bringen nichts, solange er die Header - Datei nicht kompilieren kann.

Hast Du die Datei gl.h und glu.h auf deinem System und dem Compiler die Position übergeben?

Gruß
Thomas
 

Isendrak

Still Fresh
Joined
Jul 3, 2010
Messages
12
Age
32
@Ziz: Das Problem ist nich, dass die OnBoard SDL "scheiße" ist, sondern, dass da nur die Dynamic Libs dabei sind (libSDL*.so.*).
Allerdings benötigt sdlBasic (aus welchem Grund auch immer...) die Static Libs (libSDL_*.a, libSDL_*.la), die ich aber nirgends finden konnte.

@KidPaddle: Jetzt schon.

Allerdings gibt's jetzt folgende Meldung:
Code:
<i>
</i>make: *** Keine Regel vorhanden, um das Target »src/video/wizhard.c«, 
  benötigt von »build/wizhard.lo«, zu erstellen.  Schluss.
Das Verzeichnis "src/video/" hab ich gefunden. Aber die "wizhard.c" oder auch "wizhard.*" sind nich aufzufinden...

P.S.: Google sagt zu "src/video/wizhard.c" nur "Meinten Sie: src/video/wizard.c" aber auch die ist nich vorhanden...
 

Kosta

Newbie
Joined
Jul 11, 2007
Messages
122
Location
Esslingen
LOCATION
Esslingen
Isendrak said:
Da GLBasic immer noch keine Compiler Option für den CAANOO hat,
ist lt. Entwickler gleich als nächstes dran...

http://www.glbasic.com/forum/index.php?topic=6493.msg52228#msg52228
 

carli

Still Fresh
Joined
Jul 18, 2010
Messages
445
Wieso sind im sdl-header die mixer-funktionen drin? du solltest -lSDL-mixer beim Linken mit angeben.
Der Soumd gehoert nicht zum Standardumfang jedes SDL
 

Isendrak

Still Fresh
Joined
Jul 3, 2010
Messages
12
Age
32
@carli:
Falls du mit "sdl-header" die "SDLengine.h" meinst, im makefile steht folgende Zeile:
Code:
<i>
</i>LIBS=-L/opt/GPH_SDK/tools/gcc-4.2.4-glibc-2.7-eabi/lib -Wl,-rpath -lSDL_mixer -lSDL_image -lSDL_ttf -lSDL_net -lSDL -lsmpeg -lpng -ltiff -lz -ljpeg -lpthread -lm -lfreetype -ldl
Mit dabei auch "-lSDL_mixer".
P.S.: Aus welchem Grund der Code so augebaut ist, wie er ist: Keine Ahnung... Aber ich versuch das Beste draus zu machen...

@Kosta: Das klingt doch mal interessant. Bisher hab ich überall nur gelesen: "Kommt bald.", "Bisher noch nicht." oder ähnliches...
 
Top