EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Archive::Linux Servers (https://www.eqemulator.org/forums/forumdisplay.php?f=618)
-   -   Debian Linux, gcc 3.2 and EQEmu CVS compile error.. (https://www.eqemulator.org/forums/showthread.php?t=7710)

cipherious 06-04-2003 03:35 PM

Debian Linux, gcc 3.2 and EQEmu CVS compile error..
 
Well, I was experiencing some of the other problems I saw posted about, so I went ahead and updated my system to gcc3.2 et all.

Now I'm getting this when I try to make the world binary:

Code:

gcc -c -Wall -Wuninitialized -Wwrite-strings -Wcast-qual -Wbad-function-cast -Wstrict-prototypes -Wnested-externs -Wcomment -Wcast-align -Winline -Wno-deprecated -g -march=i686 -O -pthread -pipe -DFX -D_GNU_SOURCE -DINVERSEXY -DWORLD -DDEBUG=1 -DSHAREMEM -DCATCH_CRASH -I/usr/include/mysql -I/usr/mysql/include ../common/crc32.cpp -o ../common/crc32.o
cc1plus: warning: "-Wbad-function-cast" is valid for C/ObjC but not for C++
cc1plus: warning: "-Wnested-externs" is valid for C/ObjC but not for C++
../common/crc32.cpp:78:2: warning: #warning "Comment out i386 define if your arch isn't x86"
../common/crc32.cpp: In static member function `static uint32
  CRC32::Update(const int8*, unsigned int, unsigned int)':
../common/crc32.cpp:140: error: asm-specifier for variable `_crc32' conflicts
  with asm clobber list
make[1]: *** [../common/crc32.o] Error 1
make[1]: Leaving directory `/home/rsdn/eqemu/NightDumps/Source/world'
make: *** [world/world] Error 2

Any ideas?

Trumpcard 06-04-2003 11:57 PM

Thats funky....

I'd suggest following the warning and commenting out the define so the assembly isnt compiled...

Those assembly routines were written for gcc3.2, no idea why they would fail, unless gas syntax has changed..

fnemo 06-05-2003 12:11 AM

are you sure you are using gcc 3.2 ?
"gcc -v" :)

cipherious 06-05-2003 02:53 AM

Sorry, I'm not using 3.2. It's actually 3.3. x;

I caught the error, but it's definately a 386 (P2400) so I just left it alone. I'll go look into that. Thanks.

Trumpcard 06-05-2003 03:03 AM

3.3 ?

Im only up to 3.2.3 right now, not moving up to 3.3 until it's had some time to burn in.

I'm looking through their change log, don't see anything relative to modifying those warning flags for c++, or making any asm changes...

Methinks 3.3 might have some undocumented changes (or bugs).

cipherious 06-05-2003 04:43 AM

Alright, after going through literal hell removing and installing Debian packages (and accidently removing/reinstalling apache and mysql and other misc things) I've finally gotten it to compile past crc32.cpp, the problem was gcc3.3 as far as I can tell.

So now:


Code:

gcc -Wall -Wuninitialized -Wwrite-strings -Wcast-qual -Wbad-function-cast -Wstrict-prototypes -Wnested-externs -Wcomment -Wcast-align -Winline -Wno-deprecated -g -march=i686 -O -pthread -pipe -DFX -D_GNU_SOURCE -DINVERSEXY -DWORLD -DDEBUG=1 -DSHAREMEM -DCATCH_CRASH -I/usr/include/mysql -I/usr/mysql/include  ../common/EQNetwork.o ../common/timer.o ../common/database.o ../common/packet_dump.o ../common/races.o ../common/unix.o ../common/Mutex.o ../common/MiscFunctions.o ../common/serverinfo.o ../common/packet_functions.o ../common/classes.o ../common/TCPConnection.o ../common/eqtime.o ../common/crc32.o client.o net.o console.o zoneserver.o LoginServer.o ../common/md5.o ../common/dbcore.o ../common/dbasync.o ../common/EMuShareMem.o .obj/debug.o -rdynamic -L. -lstdc++ -lm -lz -L/usr/lib/mysql -L/usr/mysql/lib -lmysqlclient -ldl -o world
../common/database.o(.text+0xc07): In function `Database::HandleMysqlError(unsigned)':
../common/database.cpp:199: undefined reference to `AddEQEMuError(eEQEMuError, bool)'
net.o(.text+0xf23): In function `main':
/home/rsdn/eqemu/NightDumps/Source/world/net.cpp:379: undefined reference to `CheckEQEMuErrorAndPause()'
collect2: ld returned 1 exit status
make[1]: *** [world] Error 1
make[1]: Leaving directory `/home/rsdn/eqemu/NightDumps/Source/world'
make: *** [world/world] Error 2

Any ideas? I *just* grabbed the CVS fresh, so am I wrong in assuming thre's a missing function (or prototype) somewhere?

Thanks again.

Trumpcard 06-05-2003 05:07 AM

Add

../common/EQEMuError.o to the list of compile objects. You'll need to add doors.o also in the zone makefile.

CVS makefiles havent been updated yet for some new files.

cipherious 06-05-2003 05:12 AM

Very nice. Thanks a bunch for everything!


All times are GMT -4. The time now is 03:28 AM.

Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.