[sword-devel] BibleTime or Sword crashes on startup on Mac OS X

Alfonso Guerra sword-devel@crosswire.org
Tue, 11 Feb 2003 15:44:40 -0600


Anyone have any thoughts on what the possible causes might be or how to  
pinpoint the fault?

On Sunday, February 9, 2003, at 05:15  AM, Alfonso Guerra wrote:

> I'm trying to get bibletime 1.3beta4 to run on Mac OS X using Apple's  
> X11 with KDE 3.1. Here's a dump of what happens under gdb:
>
> GNU gdb 5.3-20021014 (Apple version gdb-250) (Sat Dec  7 02:14:27 GMT  
> 2002)
> Copyright 2002 Free Software Foundation, Inc.
> GDB is free software, covered by the GNU General Public License, and  
> you are
> welcome to change it and/or distribute copies of it under certain  
> conditions.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB.  Type "show warranty" for  
> details.
> This GDB was configured as "powerpc-apple-macos10".
> Reading symbols for shared libraries ........ done
> (gdb) run
> Starting program: /sw/bin/bibletime
> [Switching to process 3295 thread 0xb03]
> Reading symbols for shared libraries . done
> Reading symbols for shared libraries  
> ....................................................................... 
> ........... done
>
> Program received signal SIGABRT, Aborted.
> 0x9001b52c in kill ()
> (gdb) bt
> #0  0x9001b52c in kill ()
> #1  0x9005ceec in abort ()
> #2  0x027b6ff0 in __cxxabiv1::__terminate(void (*)()) ()
> #3  0x027b705c in std::terminate() ()
> #4  0x027b7a8c in __cxa_throw ()
> #5  0x027b6840 in std::__throw_logic_error(char const*) ()
> #6  0x027b6518 in char* std::string::_S_construct<char const*>(char  
> const*, char const*, std::allocator<char> const&,  
> std::forward_iterator_tag) ()
> #7  0x027b3164 in std::string::string(char const*,  
> std::allocator<char> const&) ()
> #8  0x0277f3ac in sword::LocaleMgr::getLocale(char const*)  
> (this=0x27f9de4, name=0x0) at  
> /usr/include/gcc/darwin/3.1/g++-v3/bits/stl_alloc.h:630
> #9  0x0276b2ec in sword::VerseKey::setLocale(char const*)  
> (this=0x10696c, name=0x0) at ../src/keys/versekey.cpp:159
> #10 0x0276ae8c in sword::VerseKey::VerseKey(char const*)  
> (this=0x10696c, ikey=0x0) at ../src/keys/versekey.cpp:91
> #11 0x000e34bc in __static_initialization_and_destruction_0(int, int)  
> ()
> #12 0x8fe16594 in __dyld_call_module_initializers_for_objects ()
> #13 0x8fe160a0 in __dyld_call_module_initializers ()
> #14 0x8fe133ac in __dyld__dyld_make_delayed_module_initializer_calls ()
> #15 0x00002598 in _call_mod_init_funcs () at  
> /SourceCache/Csu/Csu-45/crt.c:299
> #16 0x00002480 in _start (argc=1, argv=0xbffffaac, envp=0xbffffab4) at  
> /SourceCache/Csu/Csu-45/crt.c:217
> #17 0x000023e0 in start ()
> (gdb) list sword::VerseKey::setLocale
> 141
> 142             --instance;
> 143     }
> 144
> 145
> 146     void VerseKey::setLocale(const char *name) {
> 147             char *BMAX;
> 148             struct sbook **books;
> 149             bool useCache = false;
> 150
> (gdb)
> 151             if (localeCache.name)
> 152                     useCache = (!strcmp(localeCache.name, name));
> 153
> 154             if (!useCache)  {       // if we're setting params for  
> a new locale
> 155                     stdstr(&(localeCache.name), name);
> 156                     localeCache.abbrevsCnt = 0;
> 157             }
> 158
> 159             SWLocale *locale = (useCache) ? localeCache.locale :  
> LocaleMgr::systemLocaleMgr.getLocale(name);
> 160             localeCache.locale = locale;
> (gdb)
> 161
> 162             if (locale) {
> 163                     locale->getBooks(&BMAX, &books);
> 164                     setBooks(BMAX, books);
> 165                     setBookAbbrevs(locale->getBookAbbrevs(),  
> localeCache.abbrevsCnt);
> 166                     localeCache.abbrevsCnt = abbrevsCnt;
> 167             }
> 168             else {
> 169                     setBooks(builtin_BMAX, builtin_books);
> 170                     setBookAbbrevs(builtin_abbrevs,  
> localeCache.abbrevsCnt);
>
> It's difficult to tell *why* it's failing, but it is. Perhaps the  
> globals aren't being initialized in the correct order. In any case, a  
> solution or possible causes would be appreciated.
>
> Alfonso
>
> _______________________________________________
> sword-devel mailing list
> sword-devel@crosswire.org
> http://www.crosswire.org/mailman/listinfo/sword-devel