Jump to content
Eternal Lands Official Forums
Arowyn

Floating Point Exception

Recommended Posts

Using the pre-compiled Linux zip file, when I attempt to run either the 64-bit or the 32-bit version (I have a Core 2 Duo), the game will log me on, start, then immediately crash with a floating point exception. This is with the latest 1.50 beta. I doubt this information matters much, since the package itself is distro agnostic, but I'm running a Gentoo Linux box.

 

Has anyone else had this problem? Any ideas?

 

I'm sad :D

 

James

Edited by Arowyn

Share this post


Link to post
Share on other sites

Would it be possible to update your video drivers, and/or compile your own CVS?

 

You might also want to disable some of the options in el.ini, maybe some of them cause problems on your particular setup.

Share this post


Link to post
Share on other sites

Would it be possible to update your video drivers, and/or compile your own CVS?

 

You might also want to disable some of the options in el.ini, maybe some of them cause problems on your particular setup.

 

Sure, I can give that a try when I have the chance (I'll have some free time in the next couple weeks - getting ready for finals right now :-P), though I had issues the last time I tried to compile CVS for 64-bit, because when I tried to build using the Makefile it said my platform wasn't supported. I'll give el.ini a look as well.

 

James

Share this post


Link to post
Share on other sites
Sure, I can give that a try when I have the chance (I'll have some free time in the next couple weeks - getting ready for finals right now :-P), though I had issues the last time I tried to compile CVS for 64-bit, because when I tried to build using the Makefile it said my platform wasn't supported. I'll give el.ini a look as well.

 

James

That's because you should've set the 'arch' flag and added -DX86_64 to the compile options.

Share this post


Link to post
Share on other sites
Sure, I can give that a try when I have the chance (I'll have some free time in the next couple weeks - getting ready for finals right now :-P), though I had issues the last time I tried to compile CVS for 64-bit, because when I tried to build using the Makefile it said my platform wasn't supported. I'll give el.ini a look as well.

 

James

That's because you should've set the 'arch' flag and added -DX86_64 to the compile options.

 

Hey everyone. I'm finally done with school, and the holidays are out of the way, so I'm ready to give this a go. I looked in the Makefile for Linux and didn't see any way to set these options. Should ARCH be an environment variable I need to set? Also, where do I edit the Makefile so that the -DX86_64 option is passed to the compiler?

 

Thanks :omg:

 

James

Share this post


Link to post
Share on other sites

By the way, though I haven't compiled the CVS version yet, I thought I'd post a kernel message I just found in dmesg:

 

el.x86-64.linux[5461] trap divide error rip:482cee rsp:4207af60 error:0

 

I doubt knowing the contents of the registers do much good, but it looks like the problem was an attempted division by zero. Not sure if that helps, but I thought I'd post it since I just noticed it right now.

 

James

Share this post


Link to post
Share on other sites

el.x86-64.linux[5461] trap divide error rip:482cee rsp:4207af60 error:0

There was at least one divide by zero caused by not having sound installed, but sound enabled, and being in crowd of people. If you turn sound off in your el.ini file (~/.elc/main/el.ini set "#enable_sound=" to 0) you can avoid that particular bug. This is fixed in CVS along with many other bugs.

 

To compile for 64 bit you need to modify the "PLATFORM=-march=i686" line in make.conf to say "PLATFORM=-march=x86_64". Note that make.conf is generated from make.defaults so you might want to modify that instead to stop your change getting overwritten. Note that make.defaults is a CVS file so you might get CVS conflicts if it gets updated.

 

If the CVS compiled version still crashes, please can you run gdb and get a back trace. Ask here if you need help with that.

Share this post


Link to post
Share on other sites

You do not set -DX86_64, that stuff is done internally.

In make.conf, look for a line something like

PLATFORM=-march=nocona

That's mine, intel dual core 2 is nocona. If you don't know what to set, remove the -march=stuff line and your compiler should use the default, which will generally work but not use maximum optimisations

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×