jak zkompilovat allegro

Stepan Roh stepan na srnet.cz
Pondělí Říjen 23 12:44:58 CEST 2000


On Mon, 23 Oct 2000, Ivo Kocvara wrote:

> Dobry den.
> 
> Stahnul jsem si z internetu knihovnu allegro pro linux  s tim, ze
> rozchodim svoje bajecne DOSove programy i v linuxu, jenze pri kompilaci
> nastala chyba. Nejak jsem nebyl schopny dopatrat, v cem je problem (kde
> jsou definovane type va_arg, va_list, apod. - nekde v hlavickach k
> linuxu?). Muze mne nekdo poradit, co s tim? S kompilaci
> programu/knihoven nemam moc zkusenosti, ale zatim vsechno fungovalo.
> gcc je z RH7.0 (myslim 2.96?), linux je 2.4.0-test9.

GCC 2.96 hlida (oproti starsim GCC) typy predavane do funkce(...). Jelikoz
ve vypustce (nebo jak se '...' rika) se ocekavaji celociselne hodnoty jako
typ int a v Allegru se tam cpou short inty a spol., tak rve. Zkuste CVS
verzi Allegra (podivejte se na moji stranku
http://www.ms.mff.cuni.cz/~sroh7497/allegro/) nebo tento patch
unicode.diff (aplikace: cd allegro/src; patch -p0 < unicode.diff) :

--- unicode.old.c       Sat Oct 14 17:00:06 2000
+++ unicode.c   Sat Oct 14 16:58:13 2000
@@ -2201,7 +2201,7 @@
    #define va_int(args, flags)               \
    (                                         \
       ((flags) & SPRINT_FLAG_SHORT_INT) ?    \
-        va_arg(args, signed short int)      \
+        va_arg(args, signed int)      \
       :                                      \
       (((flags) & SPRINT_FLAG_LONG_LONG) ?   \
         va_arg(args, signed LONGLONG)       \
@@ -2217,7 +2217,7 @@
    #define va_int(args, flags)               \
    (                                         \
       ((flags) & SPRINT_FLAG_SHORT_INT) ?    \
-        va_arg(args, signed short int)      \
+        va_arg(args, signed int)      \
       :                                      \
       (((flags) & SPRINT_FLAG_LONG_INT) ?    \
         va_arg(args, signed long int)       \
@@ -2237,7 +2237,7 @@
    #define va_uint(args, flags)              \
    (                                         \
       ((flags) & SPRINT_FLAG_SHORT_INT) ?    \
-        va_arg(args, unsigned short int)    \
+        va_arg(args, unsigned int)    \
       :                                      \
       (((flags) & SPRINT_FLAG_LONG_LONG) ?   \
         va_arg(args, unsigned LONGLONG)     \
@@ -2253,7 +2253,7 @@
    #define va_uint(args, flags)              \
    (                                         \
       ((flags) & SPRINT_FLAG_SHORT_INT) ?    \
-        va_arg(args, unsigned short int)    \
+        va_arg(args, unsigned int)    \
       :                                      \
       (((flags) & SPRINT_FLAG_LONG_INT) ?    \
         va_arg(args, unsigned long int)     \





Další informace o konferenci Linux