Go Back   EQEmulator Home > EQEmulator Forums > Support > Support::General Support

Support::General Support Post all topics here having to do with errors while trying to connect to an EQEMu server but not about the setup/running of the Server itself.

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #5  
Old 06-07-2009, 11:50 AM
Derision
Developer
 
Join Date: Feb 2004
Location: UK
Posts: 1,540
Default

As you are running Linux, you are well placed to try and track this down.

In a command prompt, before you run the script to start your zones, issue the command:
Code:
ulimit -c unlimited
to enable core dumps.

Run eqlaunch to start the zones, then when you get a crash, you will have a file called core or core.nnnnn (where nnnnn is a number) in the same directory as your zone executable.

Next fire up gdb in the same directory with the zone executable and the core dump
Code:
gdb ./zone <core dump file name>
At the (gdb) prompt, issue the command bt full. This will display a backtrace of the sequence of calls that lead up to the crash. You can copy and paste that here.

e.g.
Code:
Core was generated by `./zone dynamic_01 zones'.
Program terminated with signal 6, Aborted.
#0  0xb7f50410 in ?? ()
(gdb) bt full
#0  0xb7f50410 in ?? ()
No symbol table info available.
#1  0xbfb0ae3c in ?? ()
No symbol table info available.
#2  0x00000006 in ?? ()
No symbol table info available.
#3  0xb7b93c69 in abort () from /lib/libc.so.6
No symbol table info available.
#4  0x0818544d in command_optest (c=0x86bb8b8, sep=0xbfb0afcc) at command.cpp:850
No locals.
#5  0x081921ed in command_realdispatch (c=0x86bb8b8, message=0x86e720c "#optest") at command.cpp:657
        sep = {argnum = 0, arg = 0x86ddd30, argplus = 0x86ddca0, msg = 0x84064b8 "#optest", maxargnum = 10}
        cstr = {static npos = 4294967295,
  _M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>},
    _M_p = 0x86b164c "optest"}}
        cur = (._232 *) 0x83a4808
#6  0x080f04f7 in Client::ChannelMessageReceived (this=0x86bb8b8, chan_num=8 '\b', language=0 '\0', lang_skill=100 'd',
    message=0x86e720c "#optest", targetname=0x86e7178 "") at client.cpp:846
        sender = <value optimized out>
#7  0x081beae6 in Client::Handle_OP_ChannelMessage (this=0x3da0, app=0x86b15b0) at client_packet.cpp:2725
No locals.
#8  0x081cfe5d in Client::HandlePacket (this=0x86bb8b8, app=0x86b15b0) at client_packet.cpp:428
        opcode = <value optimized out>
#9  0x080fc1bf in Client::Process (this=0x86bb8b8) at client_process.cpp:616
        ranged = <value optimized out>
        may_use_attacks = false
        auto_attack_target = <value optimized out>
        ret = true
        app = (class EQApplicationPacket *) 0x0
#10 0x080df1c6 in EntityList::MobProcess (this=0x831de40) at entity.cpp:476
        iterator = {list = @0x831de78, current_element = 0x86b1688, dir = FORWARD}
#11 0x08107359 in main (argc=Cannot access memory at address 0x3da0
) at net.cpp:494
        error2 = 95 '_'
        dbaw = <value optimized out>
        zone_name = 0x82ae9ca "."
        Config = (const ZoneConfig *) 0x838b4c0
        retval = <value optimized out>
        InterserverTimer = {start_time = 20024, timer_time = 10000, enabled = true, set_at_trigger = 10000, pUseAcurateTiming = false}
        stream_identifier = {m_patches = {<std::_Vector_base<EQStreamIdentifier::Patch*,std::allocator<EQStreamIdentifier::Patch*> >> = {
      _M_impl = {<std::allocator<EQStreamIdentifier::Patch*>> = {<__gnu_cxx::new_allocator<EQStreamIdentifier::Patch*>> = {<No data fields>}, <N---Type <return> to continue, or q <return> to quit---
o data fields>}, _M_start = 0x8496e48, _M_finish = 0x8496e60, _M_end_of_storage = 0x8496e68}}, <No data fields>},
  m_streams = {<std::_Vector_base<EQStreamIdentifier::Record*,std::allocator<EQStreamIdentifier::Record*> >> = {
      _M_impl = {<std::allocator<EQStreamIdentifier::Record*>> = {<__gnu_cxx::new_allocator<EQStreamIdentifier::Record*>> = {<No data fields>}, <No data fields>}, _M_start = 0x86b9888, _M_finish = 0x86b9888, _M_end_of_storage = 0x86b988c}}, <No data fields>}, m_identified = {
    c = {<std::_Deque_base<EQStreamInterface*,std::allocator<EQStreamInterface*> >> = {
        _M_impl = {<std::allocator<EQStreamInterface*>> = {<__gnu_cxx::new_allocator<EQStreamInterface*>> = {<No data fields>}, <No data fields>}, _M_map = 0x8420190, _M_map_size = 8, _M_start = {_M_cur = 0x842035c, _M_first = 0x8420358, _M_last = 0x8420558, _M_node = 0x842019c},
          _M_finish = {_M_cur = 0x842035c, _M_first = 0x8420358, _M_last = 0x8420558, _M_node = 0x842019c}}}, <No data fields>}}}
        quest_timers = {start_time = 23144, timer_time = 1000, enabled = true, set_at_trigger = 1000, pUseAcurateTiming = false}
        worldwasconnected = true
        eqss = (class EQStream *) 0x0
        eqsi = (EQStreamInterface *) 0x0
        temp_timer = {start_time = 23224, timer_time = 10, enabled = true, set_at_trigger = 10, pUseAcurateTiming = false}
(gdb)
Reply With Quote
 


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 06:54 AM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3