I am running amd64 and Gentoo, and I seem to have this problem during compiling (latest version):
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/lib64/perl5/5.8.8/x86_64-linux/CORE ../common/timer.cpp -o ../common/timer.o
cc1plus: warning: command line option "-Wdeclaration-after-statement" is valid for C/ObjC but not for C++
../common/timer.cpp:1: error: CPU you selected does not support x86-64 instruction set
../common/timer.cpp:1: error: CPU you selected does not support x86-64 instruction set
make: *** [../common/timer.o] Error 1
This happens when i "make" in the world dir, EMuShareMem compiled without a glitch. When I attempt to compile zone i get a whole truckload of
cc1plus: warning: command line option "-Wdeclaration-after-statement" is valid for C/ObjC but not for C++
cc1plus: warning: command line option "-Wdeclaration-after-statement" is valid for C/ObjC but not for C++
guild_mgr.cpp:0: error: CPU you selected does not support x86-64 instruction set
guild_mgr.cpp:0: error: CPU you selected does not support x86-64 instruction set
Yeah i figured as much, and just built a 32 bit binary, works
Who am I to argue with results. And I actually bet its faster for my
1-client setup (at the very least the performance gain is negligible).
I myself only add one at a time and run a test compile... add another, repeat... etc. as I tweak out my Gentoo systems.
__________________
-- Keelyeh Owner, ServerOp and Developer Jest 4 Server
Linux (Jest3 runs on Fedora, our Dev servers usually run on Ubuntu and/or Gentoo), OC-12 Connection = Hella Fast
I think the proper gcc -march flag for amd64 would be -march=k8. At least that is what I use in my /etc/make.conf for all my amd64 gentoo servers at work. My gentoo box that I run eqemu on is an old 1 Gig athlon-tbird. I make sure to change all of the makefiles to reflect this by switching -march=i686 to -march=athon-tbird and -O to -O2. The same settings that I use in make.conf. I also make sure to remove the -pg flags while I am in the makefiles. I have yet to have a compile error "knock no wood"...
__________________
-- Keelyeh Owner, ServerOp and Developer Jest 4 Server
Linux (Jest3 runs on Fedora, our Dev servers usually run on Ubuntu and/or Gentoo), OC-12 Connection = Hella Fast
Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.