PDA

View Full Version : Compile errors in gentoo


supersolar
05-25-2009, 01:42 AM
First a warning, I have never been able to compile on this machine, but have on others.

I checked out revision 573.

Things go amiss while making world. I'm using i686-pc-linux-gnu-4.3.3.

Any hints or ideas would be appreciated.

cc1plus: warning: command line option "-Wdeclaration-after-statement" is valid for C/ObjC but not for C++
gcc -c -Wall -Wuninitialized -Wwrite-strings -Wcast-qual -Wcomment -Wcast-align -Wno-deprecated -g -march=i686 -O -pthread -pipe -I../common/SocketLib -DFX -D_GNU_SOURCE -DINVERSEXY -DWORLD -DDEBUG=5 -DEQDEBUG=5 -DSHAREMEM -DCATCH_CRASH -DNO_PIDLOG -DFIELD_ITEMS -DIRC -Di386 -DAPP_OPCODE_SIZE=2 -DEMBPERL -DEMBPERL_PLUGIN -DHAS_UNION_SEMUN -I/usr/include/mysql -DHAVE_ERRNO_AS_DEFINE=1 -fno-strict-aliasing -pipe -Wdeclaration-after-statement -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -I/usr/lib/perl5/5.8.8/i686-linux/CORE ../common/serverinfo.cpp -o ../common/serverinfo.o
cc1plus: warning: command line option "-Wdeclaration-after-statement" is valid for C/ObjC but not for C++
gcc -c -Wall -Wuninitialized -Wwrite-strings -Wcast-qual -Wcomment -Wcast-align -Wno-deprecated -g -march=i686 -O -pthread -pipe -I../common/SocketLib -DFX -D_GNU_SOURCE -DINVERSEXY -DWORLD -DDEBUG=5 -DEQDEBUG=5 -DSHAREMEM -DCATCH_CRASH -DNO_PIDLOG -DFIELD_ITEMS -DIRC -Di386 -DAPP_OPCODE_SIZE=2 -DEMBPERL -DEMBPERL_PLUGIN -DHAS_UNION_SEMUN -I/usr/include/mysql -DHAVE_ERRNO_AS_DEFINE=1 -fno-strict-aliasing -pipe -Wdeclaration-after-statement -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -I/usr/lib/perl5/5.8.8/i686-linux/CORE ../common/classes.cpp -o ../common/classes.o
cc1plus: warning: command line option "-Wdeclaration-after-statement" is valid for C/ObjC but not for C++
gcc -c -Wall -Wuninitialized -Wwrite-strings -Wcast-qual -Wcomment -Wcast-align -Wno-deprecated -g -march=i686 -O -pthread -pipe -I../common/SocketLib -DFX -D_GNU_SOURCE -DINVERSEXY -DWORLD -DDEBUG=5 -DEQDEBUG=5 -DSHAREMEM -DCATCH_CRASH -DNO_PIDLOG -DFIELD_ITEMS -DIRC -Di386 -DAPP_OPCODE_SIZE=2 -DEMBPERL -DEMBPERL_PLUGIN -DHAS_UNION_SEMUN -I/usr/include/mysql -DHAVE_ERRNO_AS_DEFINE=1 -fno-strict-aliasing -pipe -Wdeclaration-after-statement -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -I/usr/lib/perl5/5.8.8/i686-linux/CORE ../common/TCPConnection.cpp -o ../common/TCPConnection.o
cc1plus: warning: command line option "-Wdeclaration-after-statement" is valid for C/ObjC but not for C++
gcc -c -Wall -Wuninitialized -Wwrite-strings -Wcast-qual -Wcomment -Wcast-align -Wno-deprecated -g -march=i686 -O -pthread -pipe -I../common/SocketLib -DFX -D_GNU_SOURCE -DINVERSEXY -DWORLD -DDEBUG=5 -DEQDEBUG=5 -DSHAREMEM -DCATCH_CRASH -DNO_PIDLOG -DFIELD_ITEMS -DIRC -Di386 -DAPP_OPCODE_SIZE=2 -DEMBPERL -DEMBPERL_PLUGIN -DHAS_UNION_SEMUN -I/usr/include/mysql -DHAVE_ERRNO_AS_DEFINE=1 -fno-strict-aliasing -pipe -Wdeclaration-after-statement -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -I/usr/lib/perl5/5.8.8/i686-linux/CORE ../common/eqtime.cpp -o ../common/eqtime.o
cc1plus: warning: command line option "-Wdeclaration-after-statement" is valid for C/ObjC but not for C++
gcc -c -Wall -Wuninitialized -Wwrite-strings -Wcast-qual -Wcomment -Wcast-align -Wno-deprecated -g -march=i686 -O -pthread -pipe -I../common/SocketLib -DFX -D_GNU_SOURCE -DINVERSEXY -DWORLD -DDEBUG=5 -DEQDEBUG=5 -DSHAREMEM -DCATCH_CRASH -DNO_PIDLOG -DFIELD_ITEMS -DIRC -Di386 -DAPP_OPCODE_SIZE=2 -DEMBPERL -DEMBPERL_PLUGIN -DHAS_UNION_SEMUN -I/usr/include/mysql -DHAVE_ERRNO_AS_DEFINE=1 -fno-strict-aliasing -pipe -Wdeclaration-after-statement -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -I/usr/lib/perl5/5.8.8/i686-linux/CORE ../common/crc32.cpp -o ../common/crc32.o
cc1plus: warning: command line option "-Wdeclaration-after-statement" is valid for C/ObjC but not for C++
../common/crc32.cpp:105:2: warning: #warning "Comment out i386 define if your arch isn't x86"
gcc -c -Wall -Wuninitialized -Wwrite-strings -Wcast-qual -Wcomment -Wcast-align -Wno-deprecated -g -march=i686 -O -pthread -pipe -I../common/SocketLib -DFX -D_GNU_SOURCE -DINVERSEXY -DWORLD -DDEBUG=5 -DEQDEBUG=5 -DSHAREMEM -DCATCH_CRASH -DNO_PIDLOG -DFIELD_ITEMS -DIRC -Di386 -DAPP_OPCODE_SIZE=2 -DEMBPERL -DEMBPERL_PLUGIN -DHAS_UNION_SEMUN -I/usr/include/mysql -DHAVE_ERRNO_AS_DEFINE=1 -fno-strict-aliasing -pipe -Wdeclaration-after-statement -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -I/usr/lib/perl5/5.8.8/i686-linux/CORE client.cpp -o client.o
cc1plus: warning: command line option "-Wdeclaration-after-statement" is valid for C/ObjC but not for C++
In file included from client.cpp:49:
WorldConfig.h:23: error: expected class-name before '{' token
WorldConfig.h: In constructor 'WorldConfig::WorldConfig()':
WorldConfig.h:34: error: class 'WorldConfig' does not have any field named 'EQEmuConfig'
WorldConfig.h: In static member function 'static bool WorldConfig::LoadConfig()':
WorldConfig.h:53: error: '_config' was not declared in this scope
WorldConfig.h:55: error: 'EQEmuConfig' has not been declared
WorldConfig.h: In static member function 'static void WorldConfig::LockWorld()':
WorldConfig.h:59: error: 'class WorldConfig' has no member named 'Locked'
WorldConfig.h: In static member function 'static void WorldConfig::UnlockWorld()':
WorldConfig.h:60: error: 'class WorldConfig' has no member named 'Locked'
WorldConfig.h: In static member function 'static void WorldConfig::SetWorldAddress(std::string)':
WorldConfig.h:68: error: 'class WorldConfig' has no member named 'WorldAddress'
WorldConfig.h: In static member function 'static void WorldConfig::SetLocalAddress(std::string)':
WorldConfig.h:69: error: 'class WorldConfig' has no member named 'LocalAddress'
client.cpp: In member function 'void Client::SendLogServer()':
client.cpp:103: error: 'const class WorldConfig' has no member named 'ShortName'
client.cpp: In member function 'bool Client::HandlePacket(const EQApplicationPacket*)':
client.cpp:582: error: 'INT_MAX' was not declared in this scope
client.cpp:589: error: 'const class WorldConfig' has no member named 'ChatHost'
client.cpp:590: error: 'const class WorldConfig' has no member named 'ChatPort'
client.cpp:591: error: 'const class WorldConfig' has no member named 'ShortName'
client.cpp:603: error: 'const class WorldConfig' has no member named 'MailHost'
client.cpp:604: error: 'const class WorldConfig' has no member named 'MailPort'
client.cpp:605: error: 'const class WorldConfig' has no member named 'ShortName'
client.cpp: In member function 'void Client::Clearance(sint8)':
client.cpp:827: error: 'const class WorldConfig' has no member named 'LocalAddress'
client.cpp:829: error: 'const class WorldConfig' has no member named 'WorldAddress'
client.cpp: In function 'bool CheckCharCreateInfo(CharCreate_Struct*)':
client.cpp:1269: warning: comparison between signed and unsigned integer expressions
client.cpp:1269: warning: comparison between signed and unsigned integer expressions
client.cpp:1274: warning: comparison between signed and unsigned integer expressions
client.cpp:1274: warning: comparison between signed and unsigned integer expressions
client.cpp:1279: warning: comparison between signed and unsigned integer expressions
client.cpp:1279: warning: comparison between signed and unsigned integer expressions
client.cpp:1284: warning: comparison between signed and unsigned integer expressions
client.cpp:1284: warning: comparison between signed and unsigned integer expressions
client.cpp:1289: warning: comparison between signed and unsigned integer expressions
client.cpp:1289: warning: comparison between signed and unsigned integer expressions
client.cpp:1294: warning: comparison between signed and unsigned integer expressions
client.cpp:1294: warning: comparison between signed and unsigned integer expressions
client.cpp:1299: warning: comparison between signed and unsigned integer expressions
client.cpp:1299: warning: comparison between signed and unsigned integer expressions
make[1]: *** [client.o] Error 1
make[1]: Leaving directory `/home/eqemu/source/projecteqemu-read-only/EQEmuServer/world'
make: *** [all] Error 2

cubber
05-28-2009, 03:31 PM
You need to use gcc 3.4.6

Your best be is to use the hardened profile with the hardened kernel. This will mask any gcc higher than 3.4.6 and use it as the default.

or you can install gcc 3.4.6 in a different slot

check here:

http://www.eqemulator.net/forums/showthread.php?t=28138

and here:

http://www.eqemulator.net/forums/showthread.php?t=27234

I even wrote a tutorial a while ago on how to setup your gentoo system so you can use both gcc 3.4.6 and 4.x.x here:

http://www.eqemulator.net/forums/showpost.php?p=126383&postcount=17

Hope this helps.