PlaneShift

Development => Development Deliberation => Topic started by: devilshawk on November 29, 2004, 12:11:28 pm

Title: NpcClient compiling prob!
Post by: devilshawk on November 29, 2004, 12:11:28 pm
System: Fedora Core 3
Compiler: gcc 3.4.2
CS compiled optimized
cel compiled optimized
planeshift trying to compile debug
(latest CVS)


[dev@dhcppc1 planeshift]$ jam psnpcclient
src/tools/partview/Jamfile: No such file or directory
...found 491 target(s)...
...updating 2 target(s)...
C++ ./out/linuxx86/debug/src/npcclient/networkmgr.o
src/npcclient/networkmgr.cpp: In member function `void NetworkManager::HandlePerceptions(MsgEntry*)\':
src/npcclient/networkmgr.cpp:275: error: `list\' cannot appear in a constant-expression
src/npcclient/networkmgr.cpp:275: error: `.\' cannot appear in a constant-expression
src/npcclient/networkmgr.cpp:291: error: `list\' cannot appear in a constant-expression
src/npcclient/networkmgr.cpp:291: error: `.\' cannot appear in a constant-expression
src/npcclient/networkmgr.cpp:317: error: `list\' cannot appear in a constant-expression
src/npcclient/networkmgr.cpp:317: error: `.\' cannot appear in a constant-expression
src/npcclient/networkmgr.cpp:343: error: `list\' cannot appear in a constant-expression
src/npcclient/networkmgr.cpp:343: error: `.\' cannot appear in a constant-expression

    g++ -c -o ./out/linuxx86/debug/src/npcclient/networkmgr.o     -DCS_DEBUG -g3 -I/home/dev/my_planeshift/CS/include      -I/home/dev/my_planeshift/cel/include -fexceptions  -I. -I./include -I./src/common -I./src/client -I./src/server src/npcclient/networkmgr.cpp

...failed C++ ./out/linuxx86/debug/src/npcclient/networkmgr.o ...
...skipped psnpcclient for lack of networkmgr.o...
...failed updating 1 target(s)...
...skipped 1 target(s)...

Any help appreciated!
thx DevH
Title:
Post by: Karosh_Steinkatz on November 29, 2004, 01:35:12 pm
Gcc 3.4.x doesn\'t like enums in switch/case expressions anymore. Find the fitting enum at the top of the file and turn them into #defines with values starting with 0. Exchange the switch targets with your defines and thats it.
Title:
Post by: devilshawk on November 29, 2004, 04:13:17 pm
Arghl!!! Defines?? we are in 2004 not the 80s!

Beside the symbols are used in another function as well!
I\'d propose using the correct syntax might help!
something like
TheClassThatDefinesTheSymbols::SYMBOL!

Greez DevH



src/npcclient/networkmgr.cpp LINE 271:
while (cmd != psNPCCommandsMessage::CMD_TERMINATOR)
      {
        switch(cmd)
        {
            case psNPCCommandsMessage::PCPT_TALK:
            {
Title:
Post by: acraig on November 29, 2004, 06:41:32 pm
Quote
Originally posted by devilshawk
Arghl!!! Defines?? we are in 2004 not the 80s!

Beside the symbols are used in another function as well!
I\'d propose using the correct syntax might help!
something like
TheClassThatDefinesTheSymbols::SYMBOL!

Greez DevH


Please do a patch for these and mail the diff files to me ( acraig@planeshift.it )