I haven't touched anything - basically I just used the Source SDK menu to create a new HL2MP mod, configured the Makefile, fixed up some minor errors in the .vcproj file which stopped compile at the first file (reported it to bugzilla) and that was it. All the code I'm trying to compile is "virgin" SDK code and I haven't touched a thing.
I went for 3.4.6 as it appears to be the latest of the 3.4.X series of GCC and the Wiki states that 3.4.1 has a bug and that 3.4.4 is recommended so I saw no harm in going with 3.4.6. As I said, build environment is fine, vcpm compiles, Makefile is created fine and the compile starts, it just falls over at npc_talker.cpp with that message about min/max. This is *really* frustrating that the stock SDK codebase wont compile "out of the box" and as we're not really *nix experts is been a bit demoralising that we may not have the skills in the team to resolve this meaning we dont know if we'll be able to offer a linux server build of our mod. :o( - Jed On 28/12/06, Joel R. <[EMAIL PROTECTED]> wrote:
-- [ Picked text/plain from multipart/alternative ] Jed did you happen to edit an include file with a static variable or an enum or something new, most likely a shareddef file or something thats included in alot of places. It seems to me like you forgot to use a ; in some header file. I got similar errors like this on a windows build because my enum didn't have a closing semi-colon. On 12/23/06, Jed <[EMAIL PROTECTED]> wrote: > > Well after solving all the other problems I've managed to get the > current HL2MP SDK to start compiling but I've hit an error regarding > min/max. > > I've searched the archives and found mention to it but no definate > answer on how to fix it. I've looked at the KI list for Linux on the > SDK but it's really confusing as to what issues are from the old SDK, > which are just with the new or what remain from both. > > So, in short - I'm compiling the current 31st Oct 2006 HL2MP codebase > with GCC 3.4.6. > > Everything is set-up and running as far as a build environment is > concerned and the compile begins before stopping with this: > > /usr/bin/g++34 -w -I../dlls/../game_shared/hl2 -I../dlls/. > -I../dlls/../public -I../dlls/../public/tier1 -I../dlls/../game_shared > -I../dlls/../utils/common -I../dlls/../dlls -I../dlls/../../dlls > -I../dlls/../dlls/hl2_dll -I../dlls/../dlls/hl2mp_dll > -I../dlls/../game_shared/hl2mp -I../dlls/./episodic -DHL2_EPISODIC > -DHL2MP -DHL2_DLL -DUSES_SAVERESTORE -DNDEBUG -DGAME_DLL > -Dsprintf=use_Q_snprintf_instead_of_sprintf -DVECTOR > -Dstrncpy=use_Q_strncpy_instead -D_snprintf=use_Q_snprintf_instead > -DPROTECTED_THINGS_ENABLE -mtune=i686 -march=pentium3 -mmmx -O3 > -fpermissive -D_LINUX -DNDEBUG -Dstricmp=strcasecmp > -D_stricmp=strcasecmp -D_strnicmp=strncasecmp -Dstrnicmp=strncasecmp > -D_snprintf=snprintf -D_vsnprintf=vsnprintf -D_alloca=alloca > -Dstrcmpi=strcasecmp -Usprintf=use_Q_snprintf_instead_of_sprintf > -Ustrncpy=use_Q_strncpy_instead -UPROTECTED_THINGS_ENABLE -o > obj/server_i486/dlls/npc_talker.o -c ../dlls/npc_talker.cpp > In file included from > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/memory:61, > from > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/string:48, > from ../dlls/../public/stdstring.h:26, > from ../dlls/ai_playerally.h:18, > from ../dlls/npc_talker.h:42, > from ../dlls/npc_talker.cpp:10: > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:292:22: > macro "max" requires 2 arguments, but only 1 given > In file included from > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/memory:61, > from > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/string:48, > from ../dlls/../public/stdstring.h:26, > from ../dlls/ai_playerally.h:18, > from ../dlls/npc_talker.h:42, > from ../dlls/npc_talker.cpp:10: > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:292: > error: expected `;' before "throw" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:295: > error: expected `;' before "static" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:320:23: > macro "max" requires 2 arguments, but only 1 given > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:320: > error: expected `;' before "throw" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:323: > error: expected `;' before "static" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:373:23: > macro "max" requires 2 arguments, but only 1 given > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:373: > error: expected `;' before "throw" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:376: > error: expected `;' before "static" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:423:30: > macro "max" requires 2 arguments, but only 1 given > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:423: > error: expected `;' before "throw" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:426: > error: expected `;' before "static" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:473:32: > macro "max" requires 2 arguments, but only 1 given > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:473: > error: expected `;' before "throw" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:476: > error: expected `;' before "static" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:523:26: > macro "max" requires 2 arguments, but only 1 given > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:523: > error: expected `;' before "throw" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:526: > error: expected `;' before "static" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:573:24: > macro "max" requires 2 arguments, but only 1 given > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:573: > error: expected `;' before "throw" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:576: > error: expected `;' before "static" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:623:33: > macro "max" requires 2 arguments, but only 1 given > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:623: > error: expected `;' before "throw" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:626: > error: expected `;' before "static" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:673:22: > macro "max" requires 2 arguments, but only 1 given > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:673: > error: expected `;' before "throw" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:676: > error: expected `;' before "static" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:723:31: > macro "max" requires 2 arguments, but only 1 given > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:723: > error: expected `;' before "throw" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:726: > error: expected `;' before "static" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:773:23: > macro "max" requires 2 arguments, but only 1 given > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:773: > error: expected `;' before "throw" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:776: > error: expected `;' before "static" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:823:32: > macro "max" requires 2 arguments, but only 1 given > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:823: > error: expected `;' before "throw" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:826: > error: expected `;' before "static" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:873:28: > macro "max" requires 2 arguments, but only 1 given > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:873: > error: expected `;' before "throw" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:876: > error: expected `;' before "static" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:923:37: > macro "max" requires 2 arguments, but only 1 given > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:923: > error: expected `;' before "throw" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:926: > error: expected `;' before "static" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:973:24: > macro "max" requires 2 arguments, but only 1 given > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:973: > error: expected `;' before "throw" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:976: > error: expected `;' before "static" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:1029:25: > macro "max" requires 2 arguments, but only 1 given > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:1029: > error: expected `;' before "throw" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:1032: > error: expected `;' before "static" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:1085:30: > macro "max" requires 2 arguments, but only 1 given > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:1085: > error: expected `;' before "throw" > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/limits:1088: > error: expected `;' before "static" > In file included from > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/string:48, > from ../dlls/../public/stdstring.h:26, > from ../dlls/ai_playerally.h:18, > from ../dlls/npc_talker.h:42, > from ../dlls/npc_talker.cpp:10: > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/memory:77:62: > macro "max" requires 2 arguments, but only 1 given > In file included from > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/string:48, > from ../dlls/../public/stdstring.h:26, > from ../dlls/ai_playerally.h:18, > from ../dlls/npc_talker.h:42, > from ../dlls/npc_talker.cpp:10: > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/memory: > In function `std::pair<_Tp*, ptrdiff_t> > std::__get_temporary_buffer(ptrdiff_t, _Tp*)': > > /usr/lib/gcc/i386-redhat-linux/3.4.6/../../../../include/c++/3.4.6/memory:77: > error: `max' is not a member of `std::numeric_limits<int>' > make[1]: *** [obj/server_i486/dlls/npc_talker.o] Error 1 > make[1]: Leaving directory `/usr/local/src/Source SDK/linux_sdk' > make: *** [mod] Error 2 > > > I'm sure I can't be the only one with this problem and googling for > the error message didn't reveal any insights of how to solve it. > > Little help? > > - Jed > > _______________________________________________ > To unsubscribe, edit your list preferences, or view the list archives, > please visit: > http://list.valvesoftware.com/mailman/listinfo/hlcoders > > -- _______________________________________________ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
_______________________________________________ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders

