Compile error with 0.4.3 in FreeBSD 4.7
root:~eq/server/zone> gmake -f makefile
gcc32 -c -Wall -Wuninitialized -Wwrite-strings -Wcast-qual -Wbad-function-cast -Wstrict-prototypes -Wno-deprecated -Wnested-externs -Wcomment -Wcast-align -O -ggdb -march=i686 -pthread -pipe -D_GNU_SOURCE -DINVERSEXY -DFX -DZONE -DDEBUG=1 -DSHAREMEM -DCATCH_CRASH -I/usr/include/mysql -I/usr/mysql/include ../common/EQNetwork.cpp -o ../common/EQNetwork.o ../common/EQNetwork.cpp: In member function `bool EQNetworkServer::Open(short unsigned int)': ../common/EQNetwork.cpp:117: aggregate `sockaddr_in address' has incomplete type and cannot be defined ../common/EQNetwork.cpp:128: `INADDR_ANY' undeclared (first use this function) ../common/EQNetwork.cpp:128: (Each undeclared identifier is reported only once for each function it appears in.) ../common/EQNetwork.cpp: In member function `void EQNetworkServer::Process()': ../common/EQNetwork.cpp:202: aggregate `sockaddr_in from' has incomplete type and cannot be defined ../common/EQNetwork.cpp: In member function `bool EQNetworkConnection::OpenSock(unsigned int, short unsigned int)': ../common/EQNetwork.cpp:548: aggregate `sockaddr_in server_sin' has incomplete type and cannot be defined ../common/EQNetwork.cpp: In member function `void EQNetworkConnection::Process(int)': ../common/EQNetwork.cpp:794: `sockaddr_in' undeclared (first use this function) ../common/EQNetwork.cpp:794: parse error before `;' token ../common/EQNetwork.cpp:795: `to' undeclared (first use this function) gmake: *** [../common/EQNetwork.o] Error 1 root:~eq/server/zone> -------------------------------- Pertinant Information: FreeBSD 4.7-RELEASE-p9 GCC 3.2.2 LinuxThreads installed mySQL installed |
isnt there a file called makefilefreebsd ?
|
root:~eq/server/world> gmake -f makefilefreebsd
gcc32 -c -Wall -Wuninitialized -Wwrite-strings -Wcast-qual -Wbad-function-cast -Wstrict-prototypes -Wnested-externs -Wcomment -Wcast-align -Winline -Wno-deprecated -g -march=i686 -O3 -pipe -DFREEBSD -D_THREAD_SAFE -D__USE_UNIX98 -DFX -D_GNU_SOURCE -DINVERSEXY -DWORLD -I/usr/local/include/pthread/linuxthreads -I/usr/include -I/usr/local/include -I/usr/include/mysql -I/usr/local/include/mysql ../common/database.cpp -o ../common/database.o ../common/database.cpp: In destructor `Database::~Database()': ../common/database.cpp:601: `max_loottable' undeclared (first use this function) ../common/database.cpp:601: (Each undeclared identifier is reported only once for each function it appears in.) ../common/database.cpp:615: `max_lootdrop' undeclared (first use this function) ../common/database.cpp: In member function `bool Database::LoadNPCTypes()': ../common/database.cpp:6723: warning: unused variable `MYSQL_RES*result2' ../common/database.cpp:6727: warning: unused variable `char**row2' ../common/database.cpp: In member function `bool Database::GetFactionIdsForNPC(int, LinkedList<NPCFaction*>*, sint32*)': ../common/database.cpp:9251: warning: comparison between signed and unsigned integer expressions ../common/database.cpp: In member function `bool Database::LoadNPCFactionLists()': ../common/database.cpp:10193: warning: comparison between signed and unsigned integer expressions gmake: *** [../common/database.o] Error 1 root:~eq/server/world> root:~eq/server.old/zone> gmake -f makefilefreebsd gmake: *** No rule to make target `../common/crc32/o', needed by `zone'. Stop. root:~eq/server.old/zone> |
It just hasnt been kept up to date... look at the standard make file and the list of .o files in it, and make sure it matches the list of .o files in makefilefreebsd
|
Thanks for all the help Trump I have one more problem tho :cry: There are a few 'undefined variable' errors and such but this is the one that ultimately breaks my compile. There seem to be quite a few errors during compile so if it's any help I can post the error outputs of the compile for ya.
root:~eq/server/zone> gmake -f makefilefreebsd gcc32 -c -Wall -Wuninitialized -Wwrite-strings -Wcast-qual -Wbad-function-cast -Wstrict-prototypes -Wno-deprecated -Wnested-externs -Wcomment -Wcast-align -O -ggdb -march=i686 -pipe -DFREEBSD -D_THREAD_SAFE -D__USE_UNIX98 -D_GNU_SOURCE -DINVERSEXY -DFX -I/usr/include/mysql -I/usr/local/include/mysql -I/usr/local/include/pthread/linuxthreads ../common/EMuShareMem.cpp -o ../common/EMuShareMem.o ../common/EMuShareMem.cpp: In member function `bool LoadEMuShareMemDLL::Load()': ../common/EMuShareMem.cpp:62: invalid conversion from `const char*' to `char*' ../common/EMuShareMem.cpp:101: invalid conversion from `const char*' to `char*' ../common/EMuShareMem.cpp:115: invalid conversion from `const char*' to `char*' ../common/EMuShareMem.cpp: In member function `void LoadEMuShareMemDLL::Unload()': ../common/EMuShareMem.cpp:146: invalid conversion from `const char*' to `char*' gmake: *** [../common/EMuShareMem.o] Error 1 root:~eq/server/zone> |
Try removing the -DSHARE_MEM... No idea if the sharemem implementation will work on FreeBSD
|
the compiler doesnt use -DSHARE_MEM
|
Try putting it in there then
|
I already tried that :) it didnt make a diff
|
0.4.3-release compiling on freebsd 4.7-stable
got it compiling fine here with some changes, loaded up a database last night to test but didn't get a chance to log in. will try this afternoon, and if it works upload the patch to here, then take a look at cvs and see how it is.
main problems here after taking out shared memory were implicit declarations of rand and atoi/atof. to fix these i included <stdlib.h> in two source files I think. I also chunked the shared memory stuff. Didn't notice my old readme in the distribution, either, so I'll try to add something here in addition to the diff and the two makefiles. i bet it's khuong's fault they weren't there ;-) |
patches
enjoy
|
last one
|
Great work var1ety it compiled :)... HOWEVER :wink: we have a new problem... check this out http://forums.eqemu.net/viewtopic.php?t=6841
|
great to hear it compiled, hopefully it'll patch against the cvs tree without much trouble so it gets included with the elusive 0.4.4
|
All times are GMT -4. The time now is 10:36 AM. |
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.