Internet Info, s.r.o. Lupa Měšec Podnikatel Root Zdroják DigiZone Slunečnice Vitalia TopDrive KupDnes Navrcholu NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

Hlavní navigace

Názory k článku
SDL: Hry nejen pro Linux (4)

ziav
ziav (neregistrovaný)
15. 3. 2005 7:35 Nový

Dve otazky

celé vlákno
1) je mozne zakazat SDL pouzivat konkretni ovlacac, napriklad framebuffer v konzoli?
2) da se v aktualnich verzich nejak zmenit titulek okna, tusim sdl_app ?
Diky
Michal Turek
15. 3. 2005 16:18 Nový

Re: Dve otazky

celé vlákno
1) Jestli to chápu dobře, tak chcete, aby se někde na začátku programu otestoval nastavený ovladač a pokud se jeho hodnota bude něčemu rovnat, tak zvolit jiný, skončit nebo provést něco v tom smyslu?

Nikdy jsem nic takového neřešil a netuším, k čemu by to mohlo být, ale první, co bych zkusil, tak asi funkce SDL_putenv() a SDL_getenv() (SDL_getenv.h) hned po startu aplikace, možná až po SDL_Init(). Jestli to nepomůže, tak bych se začal hrabat v hlavičkových souborech a potom zdrojácích ;), popř. fulltext na libsdl.org nebo google.

2) Titulek okna se změní funkcí SDL_WM_SetCaption().
Digero
Digero (neregistrovaný)
15. 3. 2005 11:45 Nový

Problemecek

celé vlákno
Mam tady drobny problem s kompilaci SDL. Zkousim zkompilovat SDL hry pod knihovnou uclibc (nahrada glibc). Pouzivam gcc 3.4, uclibc 0.9.27 a embedded gentoo. Samotna libsdl se zkompiluje bezproblemu. Nejde ale nainstalovat balicky na ni zavisle. Vzdy selze konfigurace na zjistovani verze SDL. Pokud to zakazu --disable-sdltest, tak se zkonfiguruje ale selze kompilace. Stejna chyba je pak i v error logu configurace.

Mozna je to problem uclibc, ale vetsina baliku mi jde zkompilovat bez problemu (xmms,mplayer,xfree..+par her bez sdl). A z vypisu chyby si spis myslim ze je chyba v gcc. Mozna zakazat linkovani libstdc++.so.5, ale to nevim jak se dela.Google o tehle chybe nic smysluplneho nedava.

Uz se s tim par veceru trapim. Poradite?

root@artemis SDL_image-1.2.3 # make 
/bin/sh ./libtool --mode=link gcc  -g -O2 -I/usr/include/SDL -D_REENTRANT -DLOAD_BMP -DLOAD_GIF -DLOAD_LBM -DLOAD_PCX -DLOAD_PNM -DLOAD_TGA -DLOAD_XPM  -o showimage  showimage.o libSDL_image.la -L/usr/lib -Wl,-rpath,/usr/lib -lSDL -lpthread 
gcc -g -O2 -I/usr/include/SDL -D_REENTRANT -DLOAD_BMP -DLOAD_GIF -DLOAD_LBM -DLOAD_PCX -DLOAD_PNM -DLOAD_TGA -DLOAD_XPM -o .libs/showimage showimage.o .libs/libSDL_image.so -L/usr/lib -lSDL -lpthread -L/usr/lib -Wl,-rpath,/usr/lib -lSDL -lpthread -Wl,--rpath -Wl,/usr/local/lib 
//usr/lib/gcc-lib/i386-pc-linux-uclibc/3.3.5/libstdc++.so.5: undefined reference to `_Unwind_SjLj_Unregister' 
//usr/lib/gcc-lib/i386-pc-linux-uclibc/3.3.5/libstdc++.so.5: undefined reference to `_Unwind_GetIP' 
//usr/lib/gcc-lib/i386-pc-linux-uclibc/3.3.5/libstdc++.so.5: undefined reference to `_Unwind_GetRegionStart' 
//usr/lib/gcc-lib/i386-pc-linux-uclibc/3.3.5/libstdc++.so.5: undefined reference to `__umoddi3' 
//usr/lib/gcc-lib/i386-pc-linux-uclibc/3.3.5/libstdc++.so.5: undefined reference to `_Unwind_SjLj_Register' 
//usr/lib/gcc-lib/i386-pc-linux-uclibc/3.3.5/libstdc++.so.5: undefined reference to `__udivdi3' 
//usr/lib/gcc-lib/i386-pc-linux-uclibc/3.3.5/libstdc++.so.5: undefined reference to `_Unwind_DeleteException' 
//usr/lib/gcc-lib/i386-pc-linux-uclibc/3.3.5/libstdc++.so.5: undefined reference to `_Unwind_SjLj_RaiseException' 
//usr/lib/gcc-lib/i386-pc-linux-uclibc/3.3.5/libstdc++.so.5: undefined reference to `_Unwind_SjLj_Resume' 
//usr/lib/gcc-lib/i386-pc-linux-uclibc/3.3.5/libstdc++.so.5: undefined reference to `_Unwind_SjLj_Resume_or_Rethrow' 
//usr/lib/gcc-lib/i386-pc-linux-uclibc/3.3.5/libstdc++.so.5: undefined reference to `_Unwind_SetIP' 
//usr/lib/gcc-lib/i386-pc-linux-uclibc/3.3.5/libstdc++.so.5: undefined reference to `_Unwind_GetTextRelBase' 
//usr/lib/gcc-lib/i386-pc-linux-uclibc/3.3.5/libstdc++.so.5: undefined reference to `_Unwind_GetLanguageSpecificData' 
//usr/lib/gcc-lib/i386-pc-linux-uclibc/3.3.5/libstdc++.so.5: undefined reference to `_Unwind_SetGR' 
//usr/lib/gcc-lib/i386-pc-linux-uclibc/3.3.5/libstdc++.so.5: undefined reference to `_Unwind_GetDataRelBase' 
collect2: ld returned 1 exit status 
make: *** [showimage] Error 1 
Digero
Digero (neregistrovaný)
15. 3. 2005 11:50 Nový

Re: Problemecek

celé vlákno
Pardon chybka, pouzivam gcc 3.3
BruXy
BruXy (neregistrovaný)
15. 3. 2005 15:12 Nový

Re: Problemecek

celé vlákno
Tohle vypada na to, ze linker potrebuje jeste dodat nejakou -l knihovnu a cestu k ni...

Zkus si dat ldd na tu konkretni libstdc a uvidis co je treba jeste prilinkovat...
HKMaly aura:99
20. 3. 2005 23:47 Nový

Re: Problemecek

celé vlákno
Zda se, ze nikdo nevi, tak alespon moje troska ... myslim, ze _Unwind* souvisi s vyjimkami a neprekvapilo by me, kdyby je uclibc nepodporovala. Oproti tomu __umoddi3 a __udivdi3 jsou funkce pro kvalitnejsi aritmetiku (long long ?) a gcc predpoklada, ze mu je nekdo da v nejake knihovne. Mel jsem s nejakou podobnou funkci problem v kernelu (modulu).
STiCKi
STiCKi (neregistrovaný)
6. 4. 2005 16:50 Nový

kompilace

celé vlákno
Nejde mi to zkompilovat.
Vypisuje to syntax error before ´[´ token
Je to tento redek:

done = !ProcessEvent();

nebo presneji tento cyklus:

bool done = false;
while(!done)
{
done = !ProcessEvent();
}
Matej Krajčovič
4. 11. 2006 14:43 Nový

Nejde mi to zkompilovať.

celé vlákno
Mám Dev-Cpp 4.9.9.2 a nejde mi to najsť SDL.dll. Poradite mi prosim ?
LokoSVK
LokoSVK (neregistrovaný) ---.213-81-178.telecom.sk
6. 7. 2010 13:46 Nový

Re: Nejde mi to zkompilovať.

celé vlákno

Predpokladám, že ti vypisuje „Undefined reference to…“.
V tom prípade musíš:
1. Vytvoriť projekt v devcpp
2. v Menu Projekt->Nastavenie projektu záložka Parametre textové okno Linker napísať alebo skopírovať: -lmingw32
-lSDLmain
-lSDL
-mwindows
3. kliknúť: projekt->Pridať do projektu a vybrať daný súbor(s príponou .cpp)
dôvod, prečo to neurobil autor:
on to robil pod linuxom a tam sa toto robí pomocou Makefile

Zasílat nově přidané příspěvky e-mailem