Vlákno názorů k článku SDL: Hry nejen pro Linux (4) od Digero - Mam tady drobny problem s kompilaci SDL. Zkousim...

  • Článek je starý, nové názory již nelze přidávat.
  • 15. 3. 2005 11:45

    Digero (neregistrovaný)
    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 
    
  • 15. 3. 2005 15:12

    BruXy (neregistrovaný)
    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...
  • 20. 3. 2005 23:47

    bez přezdívky
    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).