Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 284464 - games-sports/xmoto-0.5.2 fails to build
Summary: games-sports/xmoto-0.5.2 fails to build
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Games (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Games
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-09-10 10:46 UTC by Franz Trischberger
Modified: 2010-01-05 15:50 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
xmoto-amd64_gcc441.diff (xmoto-amd64_gcc441.diff,954 bytes, patch)
2009-09-10 10:48 UTC, Franz Trischberger
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Franz Trischberger 2009-09-10 10:46:58 UTC
On my system size_t (as returned by std::vector::size()) is an unsigned long.
DBuffer only declares operators for unsigned int.
So better declare it ;)

I can't tell if it is an 64-bit issue or a gcc-4.4.1 one. But i think its No.1.

Reproducible: Always
Comment 1 Franz Trischberger 2009-09-10 10:48:24 UTC
Created attachment 203670 [details, diff]
xmoto-amd64_gcc441.diff

patch to build with size_t == unsigned long
Comment 2 Timothy Miller 2009-09-10 13:54:33 UTC
I'm having the same problem:

x86_64-pc-linux-gnu-g++ -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"xmoto\" -DVERSION=\"0.5.2\" -D_GNU_SOURCE=1 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DXMOTO_LITTLE_ENDIAN=1 -DHAVE_SQLITE3_H=1 -DHAVE_LIBSQLITE3=1 -DHAVE_LIBZ=1 -DHAVE_LIBJPEG=1 -DHAVE_LIBPNG=1 -DHAVE_LIBBZ2=1 -DHAVE_LIBGLU=1 -DHAVE_ICONV_H=1 -DHAVE_LIBSDL_MIXER=1 -DHAVE_LIBSDL_NET=1 -DHAVE_LIBSDL_TTF=1 -DHAVE_PTHREAD=1 -DHAVE_LUA_H=1 -DHAVE_LIBCURL=1 -DHAVE_VISIBILITY=1 -DHAVE_STDINT_H_WITH_UINTMAX=1 -DHAVE_ALLOCA_H=1 -DHAVE_ALLOCA=1 -DHAVE_STDLIB_H=1 -DHAVE_UNISTD_H=1 -DHAVE_GETPAGESIZE=1 -DHAVE_MMAP=1 -DINTDIV0_RAISES_SIGFPE=1 -DHAVE_INTTYPES_H_WITH_UINTMAX=1 -DHAVE_UNSIGNED_LONG_LONG_INT=1 -DHAVE_UNSIGNED_LONG_LONG=1 -DHAVE_UINTMAX_T=1 -DHAVE_INTTYPES_H=1 -DUSE_POSIX_THREADS=1 -DUSE_POSIX_THREADS_WEAK=1 -DHAVE_PTHREAD_RWLOCK=1 -DHAVE_PTHREAD_MUTEX_RECURSIVE=1 -DHAVE_BUILTIN_EXPECT=1 -DHAVE_ARGZ_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_LIMITS_H=1 -DHAVE_UNISTD_H=1 -DHAVE_SYS_PARAM_H=1 -DHAVE_GETCWD=1 -DHAVE_GETEGID=1 -DHAVE_GETEUID=1 -DHAVE_GETGID=1 -DHAVE_GETUID=1 -DHAVE_MEMPCPY=1 -DHAVE_MUNMAP=1 -DHAVE_STPCPY=1 -DHAVE_STRCASECMP=1 -DHAVE_STRDUP=1 -DHAVE_STRTOUL=1 -DHAVE_TSEARCH=1 -DHAVE_ARGZ_COUNT=1 -DHAVE_ARGZ_STRINGIFY=1 -DHAVE_ARGZ_NEXT=1 -DHAVE___FSETLOCKING=1 -DHAVE_DECL_FEOF_UNLOCKED=1 -DHAVE_DECL_FGETS_UNLOCKED=1 -DHAVE_ICONV=1 -DICONV_CONST= -DHAVE_NL_LOCALE_NAME=1 -DHAVE_LONG_LONG_INT=1 -DHAVE_LONG_DOUBLE=1 -DHAVE_WCHAR_T=1 -DHAVE_WINT_T=1 -DHAVE_INTMAX_T=1 -DHAVE_POSIX_PRINTF=1 -DHAVE_STDINT_H=1 -DHAVE_STDINT_H=1 -DHAVE_STDDEF_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_ASPRINTF=1 -DHAVE_FWPRINTF=1 -DHAVE_PUTENV=1 -DHAVE_SETENV=1 -DHAVE_SETLOCALE=1 -DHAVE_SNPRINTF=1 -DHAVE_WCSLEN=1 -DHAVE_DECL__SNPRINTF=0 -DHAVE_DECL__SNWPRINTF=0 -DHAVE_DECL_GETC_UNLOCKED=1 -DHAVE_LANGINFO_CODESET=1 -DHAVE_LC_MESSAGES=1 -DENABLE_NLS=1 -DHAVE_GETTEXT=1 -DHAVE_DCGETTEXT=1 -I.    -O2 -march=core2 -ggdb -pipe -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -DNOMMGR -Wall -DGAMEDATADIR=\"/usr/share/games/xmoto\" -DLOCALESDIR=\"/usr/share/locale\" -DASIAN_TTF_FILE=\"/usr/share/fonts/truetype/wqy/wqy-zenhei.ttf\" -DALLOW_DEV=0 -DCONFIGURE_DEFAULT_THEME=\"Modern\"  -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -DUSE_OPENGL=1 -DUSE_SDLGFX=0 -D'SVN_REV=""'  -O2 -march=core2 -ggdb -pipe -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -c -o Replay.o Replay.cpp
Replay.cpp: In member function �~@~Xvoid Replay::saveReplay_2(FileHandle*)�~@~Y:
Replay.cpp:159: error: ambiguous overload for �~@~Xoperator<<�~@~Y in �~@~Xv_replay << ((Replay*)this)->Replay::m_Chunks.std::vector<_Tp, _Alloc>::size [with _Tp = ReplayStateChunk*, _Alloc = std::allocator<ReplayStateChunk*>]()�~@~Y
DBuffer.h:64: note: candidates are: void DBuffer::operator<<(bool)
DBuffer.h:66: note:                 void DBuffer::operator<<(int)
DBuffer.h:68: note:                 void DBuffer::operator<<(unsigned char)
DBuffer.h:70: note:                 void DBuffer::operator<<(unsigned int)
DBuffer.h:72: note:                 void DBuffer::operator<<(float)
DBuffer.h:74: note:                 void DBuffer::operator<<(std::string) <near match>
Comment 3 Enrico Tagliavini 2009-09-11 15:39:08 UTC
same here with gcc 4.3.2
Comment 4 Franz Trischberger 2009-09-11 16:28:54 UTC
Doesn't the proposed patch work for both of you?

copy the ebuild from portage to your local overlay, put the patch into the subdirectory "files" and add the following line at the end of the function "src_prepare"

epatch "${FILESDIR}/xmoto-amd64_gcc441.diff"
Comment 5 Mr. Bones. (RETIRED) gentoo-dev 2009-09-11 22:04:51 UTC
in portage.  thanks for the bug report and patch.