Here's a potential fix:
Modify world/net.cpp line 326 to read: if (fscanf (f, "%[^=]=%[^\r\n]\n", type, buf) == 2) It turns out vim was concealing carriage returns in the file I was using for testing. Darn end of line characters... |
success!!!
[root@design eqemu]# world/world
LoginServer.ini read. Using database 'eq' at localhost Loading items...done. Loading guild ranks...done. World server listening on port:9000 Connected to LoginServer: eqlogin.gotfrags.com:5999 Misanth, you are the MAN enough said... :) |
Same here! Currently running a Linux World and an NT World both off the same DB, time to do some testing! hehe
Thanks for the help! |
not so success...
well...things apear to be runnin fine, until ya try to go into the game
can create a character, etc, but when i actually try to enter... back to the select server screen... here is a copy of output... names changed to protect the innocent 98490 New client from ip: yyy.yyy.yyy.yyy port:2379 Logged in: LS#1440: yngling Sending list of guilds Unknown opcode: 0x3521 size:2056 Unknown opcode: 0x3921 size:2056 Unknown opcode: 0x9221 size:4 0000: B0 4B C6 D6 | .K.. Unknown opcode: 0x9220 size:16 0000: 00 00 00 12 00 00 FF 7F - 00 00 00 00 00 00 00 00 | ................ Attempting autobootup of 'kaladima' for Yngling Map: Maps\kaladima.map not found. Reading zhdr file './cfg/kaladima.cfg' Reading zhdr file './cfg/kaladima.cfg' ----------- Zone server 'kaladima' listening on port:9003 ----------- Zoneserver SetZone: xxx.xxx.xxx.xxx:9003 kaladima Enter world: Yngling: kaladima Zoneserver SetZone: xxx.xxx.xxx.xxx:9003 kaladima Client disconnected Removing client from ip:yyy.yyy.yyy.yyy port:2379 New client from ip: yyy.yyy.yyy.yyy port:2381 Login packet 1 Login packet 2 Client disconnected (!pm.CA): Yngling Client disconnected (cs=d): Yngling Automatic shutdown Message:----SERVER SHUTDOWN---- Zone shutdown: going to sleep Zoneserver SetZone: xxx.xxx.xxx.xxx:9003 Zoneserver SetZone: xxx.xxx.xxx.xxx:9003 |
I can get login, chat, and zone to compile successfully.
However, world dies near the end. $ make gcc -g -m486 -03 -pthread -pipe -DFX -D GNU_SOURCE -DLUCLIN -I/usr/include/mysql ../common/EQFragment.o .. /common/EQPacket.o ../common/EQPacketManager.o ../common/timer.o ../common/database.o ../common/packet_dump.o ../common/races.o ../common/unix.o ../common/Mutex.o ../common/MiscFunctions.o client.o net.o console.o zoneserver.o LoginServer.o -L. -lstdc++ -lm -L/usr/lib/mysql -lmysqlclient -o world /usr/bin/mysql/libmysqlclient.a(my_compress.o): In function `my_uncompress':my_compress.o(.text+0x9a): undefined reference to `uncompress' /usr/bin/mysql/libmysqlclient.a(my_compress.o): In function `my_compress_alloc':my_compress.o(.text+0x12a): undefined reference to `compress' collect2: ld returned 1 exit status make: *** [world] Error 1 Compiling on RedHat 7.2. Please ignore any obvious spelling errors, as this was all typed in by hand from my laptop's screen. :) |
Steve, you need to add -lz to your relevant makefile
line. I'm at work at the moment or I could tell you precisely where. This is required as the compress/uncompress utilities are in libz. In some Linux distributions (Red Hat 7.0 would be an example), mysql clients will not successfully build without this. |
Got it too compile under gcc 3.0 !
Had to make the following changes - Update the hex and dec fields per Mis above to point to std::<cast> . I found the section in gnu.org where they discussed the changes they made in namespaces from 2.95 to 3.0. Good catch on that one Mis! - Had to add <include stdarg.h> to all files that referenced any of the va_start, va_stop, or va_list functions. - Modified the makefile so the -lz was included, and changed -m486 to march=i486 (-m486 was deprecated) Everything built successfully, I will reload the database and see if I can't get it up and running when I get home this afternoon. Note to Mis: If ya hate those ^M linefeeds, run dos2unix * It will strip them out of all the files in the directory! |
During compilation of any of the modules (world/zone/login), I'm getting flooded with a billion messages along the lines of:
Code:
../common/database.cpp: In method `bool Database::GetPlayerProfile Thanks, ==Flipper== |
Thanks Stud!
Successfully compiled now :) |
Flipper, you may have the libraries installed, but it doesnt look like you have the development headers installed.
If you are using a binary rpm distro version of mysql, do this rpm -qa |grep mysql You should see one that says mysql-devel-vxxxx.rpm If you dont have that, then the mysql header files arent available to compile against. I would recommend downloading and installing it from mysql.com Hope this helps... |
Trumpcard,
That probably was it. I was running a beta version of the new Mandrake Linux (8.2b1). I found a few bugs, reported them, then blew it away so I could get 8.1 back on. Now it compiles just fine :) Thanks! |
Has anyone managed to fix NPC names to show? Or are there any flavor of Linux install not seeing this problem?
Any spawned Linux server I've seen yet has the same problem mine does, no npc names. Any idea's Misa? |
I figured out the problem w/npc names not showing up, and a fix is in for the next release.
Glibc's snprintf clears its destination buffer before operating on it, & the code was trying to use the same buffer as source & destination erasing an npc's name. It took way too long to figure out the problem only to have to add a couple of lines to workaround the issue, but it's fixed. |
next release
as a kinda weak programmer and experienced sys admin, what can I do to assist with getting the next linux release out?
|
As far as i know starting with 0.2.3 it should work with both OS's.
|
All times are GMT -4. The time now is 05:50 AM. |
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.