[sword-devel] BibleTime or Sword crashes on startup on Mac OS X
Alfonso Guerra
sword-devel@crosswire.org
Tue, 25 Feb 2003 13:42:57 -0600
On Wednesday, February 19, 2003, at 12:58 PM, Joachim Ansorg wrote:
> Hi!
> Strange.
>
> Seems it's nothing related to locale stuff.
> I attached new version of the localetest program. Could you please
> send me the
> new output?
Checking working directory for mods.conf...
Checking working directory for mods.d...
Checking SWORD_PATH...
Parsing /sw/etc/sword.conf...
Checking for /sw/etc/sword.conf...found
DataPath in /sw/etc/sword.conf is set to: /sw/share/sword/
Checking for mods.conf in DataPath
Checking for mods.d in DataPath found
Some misc tests:
(char)1 is with value 1 and bool value 1
(char)1 is with value 0 and bool value 0
VerseKey tests
Jakobus 1:19 (should be Jakobus 1:19)
Johannes 1:1 (should be Johannes 1:1)
Calling setDefaultLocaleName("de") now
Create key2 now
Setting en locale now
Testing ListKey functionality
Creating listkey
Adding some keys using <<
Getting Count
3
Key 0 is 0x1003d0
Key 1 is 0x1002b0
Key 2 is 0x1002e0
Calling ClearList now
Calling ParseVerseList now
Bus error
>
> Do you use Sword's CVS? If you don't, could you please get it and
> compile it?
> This way we have the same source code on disk to talk about and to
> test with.
I had a working CVS compile a few weeks back, but I updated it in order
to try the latest build with bibletime. Of course sword head isn't in a
working state right now, so this path will have to wait until it's
cleared up.
> Is there somewhere a list on differences between Linux and Mac OS X
> C++ stuff?
> E.g. list of valid ranges of char, int etc.?
Here's limits.h:
/*
* Copyright (c) 1988, 1993
* The Regents of the University of California. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
the
* documentation and/or other materials provided with the
distribution.
* 3. All advertising materials mentioning features or use of this
software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its
contributors
* may be used to endorse or promote products derived from this
software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS''
AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE
LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
OF
* SUCH DAMAGE.
*
* @(#)limits.h 8.3 (Berkeley) 1/4/94
*/
/*
* HISTORY
*
* 10-July-97 Umesh Vaishampayan (umeshv@apple.com)
* Fixed conflicts with float.h. Avoid multiple includes.
*/
#ifndef _PPC_LIMITS_H_
#define _PPC_LIMITS_H_
#define CHAR_BIT 8 /* number of bits in a char */
#define MB_LEN_MAX 6 /* Allow 31 bit UTF2 */
#define CLK_TCK 100 /* ticks per second */
/*
* According to ANSI (section 2.2.4.2), the values below must be usable
by
* #if preprocessing directives. Additionally, the expression must
have the
* same type as would an expression that is an object of the
corresponding
* type converted according to the integral promotions. The
subtraction for
* INT_MIN and LONG_MIN is so the value is not unsigned; 2147483648 is
an
* unsigned int for 32-bit two's complement ANSI compilers (section
3.1.3.2).
* These numbers work for pcc as well. The UINT_MAX and ULONG_MAX
values
* are written as hex so that GCC will be quiet about large integer
constants.
*/
#define SCHAR_MAX 127 /* min value for a signed char */
#define SCHAR_MIN (-128) /* max value for a signed char */
#define UCHAR_MAX 255 /* max value for an unsigned char */
#define CHAR_MAX 127 /* max value for a char */
#define CHAR_MIN (-128) /* min value for a char */
#define USHRT_MAX 65535 /* max value for an unsigned short */
#define SHRT_MAX 32767 /* max value for a short */
#define SHRT_MIN (-32768) /* min value for a short */
#define UINT_MAX 0xffffffff /* max value for an unsigned int */
#define INT_MAX 2147483647 /* max value for an int */
#define INT_MIN (-2147483647-1) /* min value for an int */
#define ULONG_MAX 0xffffffff /* max value for an unsigned long */
#define LONG_MAX 2147483647 /* max value for a long */
#define LONG_MIN (-2147483647-1) /* min value for a long */
#define ULLONG_MAX 0xffffffffffffffffULL /* max unsigned long long */
#define LLONG_MAX 0x7fffffffffffffffLL /* max signed long long */
#define LLONG_MIN (-0x7fffffffffffffffLL-1) /* min signed long long */
#if !defined(_ANSI_SOURCE)
#define SSIZE_MAX INT_MAX /* max value for a ssize_t */
#if !defined(_POSIX_SOURCE) && !defined(_XOPEN_SOURCE)
#define SIZE_T_MAX UINT_MAX /* max value for a size_t */
#define UQUAD_MAX ULLONG_MAX
#define QUAD_MAX LLONG_MAX
#define QUAD_MIN LLONG_MIN
#endif /* !_POSIX_SOURCE && !_XOPEN_SOURCE */
#endif /* !_ANSI_SOURCE */
#if (!defined(_ANSI_SOURCE)&&!defined(_POSIX_SOURCE)) ||
defined(_XOPEN_SOURCE)
#define LONG_BIT 32
#define WORD_BIT 32
#endif /* (!(_ANSI_SOURCE) && !(_POSIX_SOURCE)) || (_XOPEN_SOURCE) */
#endif /* _PPC_LIMITS_H_ */
> Since I have no idea of endianess and plattform stuff this could get a
> hard
> job.
The primary sticking point I'm encountering right now is why bibletime
aborts while initializing the static globals. I've been trying to get
to the bottom of it with gdb, but I lack the familiarity with it to
know how to find what is causing it to abort.
> I hope we can get Sword and BibleTime running on Mac OS X.
Me too. I'd like to see what features it offers. Though MacSword is
coming along nicely there are some features I'd like to take advantage
of now.