View Single Post
  #1  
Old 10-09-2006, 09:31 PM
eq4me
Hill Giant
 
Join Date: Jul 2006
Posts: 166
Default Patch for compiling EQEmu with gcc 4.1

After looking a bit closer into the matter and getting enlightened by two collegues it turned out to be much more trivial then I thought it was.

Here is a patch against 0.7.0-857. It also includes some changes to the Makefiles I discussed in the Linux Guide.

Code:
--- EQEmu-0.7.0-857/Makefile    2006-10-07 07:22:52.000000000 +0000
+++ EQEmu-0.7.0-857-gcc4.1/Makefile     2006-10-10 08:55:04.084514500 +0000
@@ -8,4 +8,2 @@
        $(MAKE) -C utils
-       $(MAKE) -C eqemucollector
-       $(MAKE) -C eqextractor

@@ -35,4 +33,2 @@
        $(MAKE) -C eqlaunch clean
-       $(MAKE) -C eqemucollector clean
-       $(MAKE) -C eqextractor clean

--- EQEmu-0.7.0-857/common/EQStream.h   2006-05-13 02:35:58.000000000 +0000
+++ EQEmu-0.7.0-857-gcc4.1/common/EQStream.h    2006-10-10 08:44:27.344720750 +0000
@@ -225,3 +225,3 @@
                inline const EQStreamType GetStreamType() const { return StreamType; }
-               static const char *EQStream::StreamTypeString(EQStreamType t);
+               static const char *StreamTypeString(EQStreamType t);

EQEmu-0.7.0-857-gcc4.1/common/rulesys.h
--- EQEmu-0.7.0-857/common/rulesys.h    2006-07-18 13:29:49.000000000 +0000
+++ EQEmu-0.7.0-857-gcc4.1/common/rulesys.h     2006-10-10 08:53:56.692302750 +0000
@@ -85,3 +85,3 @@

-       RuleManager::RuleManager();
+       RuleManager();

EQEmu-0.7.0-857-gcc4.1/eqlaunch/makefile
--- EQEmu-0.7.0-857/eqlaunch/makefile   2006-04-17 13:59:13.000000000 +0000
+++ EQEmu-0.7.0-857-gcc4.1/eqlaunch/makefile    2006-10-10 09:13:33.993879500 +0000
@@ -13,3 +13,3 @@
 MYSQL_FLAGS=-I/usr/include/mysql
-MYSQL_LIB=-L/usr/include/mysql -lmysqlclient -lz -lcrypt -lnsl -lm -lc -lnss_files -lnss_dns -lresolv -lc -lnss_files -lnss_dns -lresolv
+MYSQL_LIB=-L/usr/include/mysql -L/usr/lib/mysql -lmysqlclient -lz -lcrypt -lnsl -lm -lc -lnss_files -lnss_dns -lresolv -lc -lnss_files -lnss_dns -lresolv
 DFLAGS=-DEQDEBUG=5

--- EQEmu-0.7.0-857/utils/Makefile      2006-01-15 18:31:18.000000000 +0000
+++ EQEmu-0.7.0-857-gcc4.1/utils/Makefile       2006-10-10 08:34:57.997138750 +0000
@@ -2,3 +2,3 @@
 all: cleanipc spell_explorer
-       gmake -C azone
+       make -C azone

@@ -12,3 +12,3 @@
        rm -f cleanipc
-       gmake -C azone clean
+       make -C azone clean

EQEmu-0.7.0-857-gcc4.1/zone/PlayerCorpse.h
--- EQEmu-0.7.0-857/zone/PlayerCorpse.h 2006-07-09 19:50:57.000000000 +0000
+++ EQEmu-0.7.0-857-gcc4.1/zone/PlayerCorpse.h  2006-10-10 08:51:00.289278250 +0000
@@ -31,10 +31,10 @@
 public:
-       static void Corpse::SendEndLootErrorPacket(Client* client);
-       static void Corpse::SendLootReqErrorPacket(Client* client, int8 response = 2);
-       static Corpse* Corpse::LoadFromDBData(int32 in_corpseid, int32 in_charid, char* in_charname, uchar* in_data, int32 in_datasize, float in_x, float in_y, float in_z, float in_heading, char* timeofdeath, bool rezzed = false);
-
-       Corpse::Corpse(NPC* in_npc, ItemList* in_itemlist, int32 in_npctypeid, const NPCType** in_npctypedata, int32 in_decaytime = 600000);
-       Corpse::Corpse(Client* client, sint32 in_rezexp);
-       Corpse::Corpse(int32 in_corpseid, int32 in_charid, char* in_charname, ItemList* in_itemlist, int32 in_copper, int32 in_silver,
int32 in_gold, int32 in_plat, float in_x, float in_y, float in_z, float in_heading, float in_size, int8 in_gender, int16 in_race, int8
in_class, int8 in_deity, int8 in_level, int8 in_texture, int8 in_helmtexture,int32 in_rezexp);
-       Corpse::~Corpse();
+       static void SendEndLootErrorPacket(Client* client);
+       static void SendLootReqErrorPacket(Client* client, int8 response = 2);
+       static Corpse* LoadFromDBData(int32 in_corpseid, int32 in_charid, char* in_charname, uchar* in_data, int32 in_datasize, float in_x, float in_y, float in_z, float in_heading, char* timeofdeath, bool rezzed = false);
+
+       Corpse(NPC* in_npc, ItemList* in_itemlist, int32 in_npctypeid, const NPCType** in_npctypedata, int32 in_decaytime = 600000);
+       Corpse(Client* client, sint32 in_rezexp);
+       Corpse(int32 in_corpseid, int32 in_charid, char* in_charname, ItemList* in_itemlist, int32 in_copper, int32 in_silver, int32 in_gold, int32 in_plat, float in_x, float in_y, float in_z, float in_heading, float in_size, int8 in_gender, int16 in_race, int8 in_class, int8 in_deity, int8 in_level, int8 in_texture, int8 in_helmtexture,int32 in_rezexp);
+       ~Corpse();

--- EQEmu-0.7.0-857/zone/beacon.h       2006-07-09 19:50:57.000000000 +0000
+++ EQEmu-0.7.0-857-gcc4.1/zone/beacon.h        2006-10-10 08:49:32.515792750 +0000
@@ -29,4 +29,4 @@
 public:
-       Beacon::Beacon(Mob *at_mob, int lifetime);
-       Beacon::~Beacon();
+       Beacon(Mob *at_mob, int lifetime);
+       ~Beacon();

--- EQEmu-0.7.0-857/zone/makefile       2006-03-03 04:21:24.000000000 +0000
+++ EQEmu-0.7.0-857-gcc4.1/zone/makefile        2006-10-10 09:12:27.273709750 +0000
@@ -13,3 +13,3 @@
 MYSQL_FLAGS=-I/usr/include/mysql
-MYSQL_LIB=-L/usr/include/mysql -lmysqlclient -lz -lcrypt -lnsl -lm -lc -lnss_files -lnss_dns -lresolv -lc -lnss_files -lnss_dns -lresolv
+MYSQL_LIB=-L/usr/include/mysql -L/usr/lib/mysql -lmysqlclient -lz -lcrypt -lnsl -lm -lc -lnss_files -lnss_dns -lresolv -lc -lnss_files -lnss_dns -lresolv
 DFLAGS=-DEQDEBUG=5 -DCATCH_CRASH -DNO_PIDLOG -DSHAREMEM -DSPELL_EFFECT_SPAM -DFIELD_ITEMS -DCOMBINED -DAPP_OPCODE_SIZE=2 -Di386
--- EQEmu-0.7.0-857/zone/map.h  2005-09-09 04:54:36.000000000 +0000
+++ EQEmu-0.7.0-857-gcc4.1/zone/map.h   2006-10-10 08:49:49.312842500 +0000
@@ -112,3 +112,3 @@
 public:
-       static Map* Map::LoadMapfile(const char* in_zonename, const char *directory = NULL);
+       static Map* LoadMapfile(const char* in_zonename, const char *directory = NULL);
        Map();
--- EQEmu-0.7.0-857/zone/net.h  2004-12-21 17:02:43.000000000 +0000
+++ EQEmu-0.7.0-857-gcc4.1/zone/net.h   2006-10-10 08:50:09.986134500 +0000
@@ -39,4 +39,4 @@
 public:
-       NetConnection::~NetConnection();
-       NetConnection::NetConnection();
+       ~NetConnection();
+       NetConnection();

--- EQEmu-0.7.0-857/zone/zone.h 2006-10-03 03:13:21.000000000 +0000
+++ EQEmu-0.7.0-857-gcc4.1/zone/zone.h  2006-10-10 08:51:30.035137250 +0000
@@ -69,4 +69,4 @@
 public:
-       static bool Zone::Bootup(int32 iZoneID, bool iStaticZone = false);
-       static void Zone::Shutdown(bool quite = false);
+       static bool Bootup(int32 iZoneID, bool iStaticZone = false);
+       static void Shutdown(bool quite = false);
Unfortunately this patch might not apply cleanly due to the snap&paste into here. I have no Webspace right now for a direct download.

Last edited by eq4me; 10-10-2006 at 06:21 AM..
Reply With Quote