Debian Lenny
I've an old Intel STL2 server that has Lenny on it. I'm trying to build the server on it, but am having a lot of grief.
With both gcc 4.1 and 4.3 I get the following: ../common/crc32.cpp: In static member function static uint32 CRC32::Update(const int8*, uint32, uint32): ../common/crc32.cpp:238: error: PIC register bx clobbered in asm make[1]: *** [../common/crc32.o] Error 1 I notice someone else had this error, and they fixed it, but they didn't say how. I've tried to get current source via svn, using: svn checkout http://projecteqemu.googlecode.com/s...nk/EQEmuServer but this doesn't get me all the code, i.e. the ../common/* directory isn't there (or the parent Makefile, or heaps of other files). Where am I stuffing up? |
BTW, the 1st error was for the 1129 tarball.
|
To get the code from SVN:
Code:
svn checkout http://projecteqemu.googlecode.com/svn/trunk/ projecteqemu-read-only Edit: I see you tried GCC 4.1, so I'm not sure what your problem is. |
This actually is a 'rare' bug that will turn up under certain situations while compiling. I looked it up a while ago and tried to understand it. I have this problem on one of my machines, but it's not a big deal for me since it's not my server machine and i can still compile else where.
If you google 'PIC register bx clobbered in asm', you'll see what I mean. This is one example of this problem and how they solved it. Line 112 in crc32.cpp seems to point to an earlier problem of this sort' Quote:
I also noticed sometimes I would get one good compile, then it would start with the 'clobbered' BS. |
I was using a debian lenny install as well and the problem with thats is that you can not downgrade perl 5.10 to 5.8.8
http://www.eqemulator.net/forums/sho...583#post159583 |
I'm no expert on asm coding by any means, but in crc32.cpp, why does the code go:
Code:
__asm __volatile ( Code:
|
Fixed code seems to be:
Code:
|
I'll test those changes out and incorporate them. I'll probably also get around to downloading the latest GCC and updating the source at some point so it compiles under it, as these issues come up on a fairly regular basis. Thanks.
|
Am I doing this right;
Code:
__asm __volatile ( |
You have to change
Code:
: "bx", "cx", "dx", "si", "di" Code:
: "cx", "dx", "si", "di" |
Ok, but now I get this;
Quote:
|
I really need new glasses....
You are missing the \n at the end of the push and pop lines. Look at the last post I made that starts "Fixed code seems to be:". It's things like that that remind me how much I hated assembler back in the day when I had to do it. And that was on 8 and 16 bit processors. |
That's cool, I'm really glad to see this get fixed - it went through this time (no clobber), I'll run the server with it a few days ), make sure it's all OK, then post again here.
Thank you for helping out! |
Next Problem
I'm sure I'm missing something obvious, but things are not quite right.
I can login with minilogin. I can create a toon and it's saved to the DB. When I enter tutorialb, the mobs are there, but they don't move. #loc and #search don't work. After a minute or so I get the "disconnected" screen. eqemu_debug_world.log: Code:
11355 [11.07. - 10:09:12] [WORLD__CLIENT] New connection from 192.168.0.50:2010 Code:
11370 [11.07. - 10:05:34] [WORLD__CLIENT] New connection from 192.168.0.50:2007 loginserver is 192.168.0.50 server is 192.168.0.24 server config: Code:
<?xml version="1.0"> Code:
###Your current configuration is as follows: |
Looks like you are getting bumped right after you get in, and is why the mobs never move (you're already booted, you just didn't know yet).
I noticed you placed <eqemu> for database? what database/version with what source are you using? If you have the newest source, then you need to make sure all the tables are up to date, or you have the newest database. Also make sure tutorialb is available for your toon (check min_status and min_level in table zone) |
All times are GMT -4. The time now is 06:11 AM. |
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.