Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

#49 Compile errors with GCC4

v0.2.7.1
closed-fixed
Manuel Moos
None
5
2005-04-22
2005-04-21
Matthias Saou
No

While trying to recompile armagetronad 0.2.7.1 on
what-will-become Fedora Core 4, I get the errors below.
GCC4 is getting very strict it seems.

/usr/bin/make -C src/tron
make[1]: Entering directory
`/usr/src/rpm/BUILD/armagetronad-0.2.7.1/src/tron'
make[1]: Leaving directory
`/usr/src/rpm/BUILD/armagetronad-0.2.7.1/src/tron'
make[1]: Entering directory
`/usr/src/rpm/BUILD/armagetronad-0.2.7.1/src/tron'
g++ -I. -I.. -I../.. -O2 -g -pipe
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -m32 -march=i386
-mtune=pentium4 -fasynchronous-unwind-tables
-I/usr/include/SDL -D_REENTRANT -I../../src/tools/
-I../../src/engine/ -I../../src/network/
-I../../src/ui/ -I../../src/render/ -I. -I../../src -c
gServerBrowser.cpp -o
gServerBrowser.o/usr/include/SDL/SDL_events.h:82:
error: '<anonymous enum>' is/uses anonymous type
/usr/include/SDL/SDL_events.h:82: error: trying to
instantiate 'template<class T> tOutput&
operator<<(tOutput&, const T&)'
/usr/include/SDL/SDL_events.h:82: error: '<anonymous
enum>' is/uses anonymous type
/usr/include/SDL/SDL_events.h:82: error: trying to
instantiate 'template<class T> rTextField&
operator<<(rTextField&, const T&)'
/usr/include/SDL/SDL_events.h:82: error: '<anonymous
enum>' is/uses anonymous type
/usr/include/SDL/SDL_events.h:82: error: trying to
instantiate 'template<class T> tString&
operator<<(tString&, const T&)'
/usr/include/SDL/SDL_events.h:83: error: '<anonymous
enum>' is/uses anonymous type

[... etc ...]

/usr/include/SDL/SDL_events.h:104: error: trying to
instantiate 'template<class T> rTextField&
operator<<(rTextField&, const T&)'
/usr/include/SDL/SDL_events.h:104: error: '<anonymous
enum>' is/uses anonymous type
/usr/include/SDL/SDL_events.h:104: error: trying to
instantiate 'template<class T> tString&
operator<<(tString&, const T&)'
make[1]: *** [gServerBrowser.o] Error 1
make[1]: Leaving directory
`/usr/src/rpm/BUILD/armagetronad-0.2.7.1/src/tron'
make: *** [all] Error 2

From the above, you can see the CFLAGS used too (the
Fedora Core 4 defaults).

Matthias

Discussion

  • Manuel Moos
    Manuel Moos
    2005-04-22

    • assigned_to: nobody --> z-man
    • status: open --> pending-fixed
     
  • Matthias Saou
    Matthias Saou
    2005-04-22

    • status: pending-fixed --> open-fixed
     
  • Matthias Saou
    Matthias Saou
    2005-04-22

    Logged In: YES
    user_id=34811

    And you're fast too! Also, it's really nice to see such a
    big C++ project compile fine with gcc4 (apart from
    #includes), great work, really.
    I've put together a quick patch that adds the rSDL.h
    includes where needed, it can be found here :
    http://svn.rpmforge.net/svn/trunk/rpms/armagetronad/

    Matthias

     
  • Matthias Saou
    Matthias Saou
    2005-04-22

    • status: open-fixed --> closed-fixed