List:General Discussion« Previous MessageNext Message »
From:Michael Widenius Date:June 30 1999 8:04pm
Subject:Re: connect with dbi:mysql crashes Perl
View as plain text  
>>>>> "Roman" == Roman Maeder <maeder@stripped> writes:

>> Note that if you are using a binary MySQL distribution which is
>> compiled with a compiler that has longlong, the above
>> -DNO_CLIENT_LONG_LONG will crash your client!
>> 
>> You have to:
>> 
>> a) Recompile the mysql client library with your current compiler
>> 
>> or
>> 
>> b) Recompile the modules with gcc.

Roman> that explains a lot. Problem with a) is that Mysql 3.22.23b cannot
Roman> be compiled without "long long", or so it seems, from this "configure"
Roman> error:

csh> env CC=acc CFLAGS=-g CXX=gcc ./configure --disable-shared --without-server

Roman> checking size of long long... 0
Roman> configure: error: MySQL needs a long long type.

Roman> is there an official or unofficial way to at least build the client lib
Roman> in this case?

Yes;  Remove the longlong test from configure and run with:

env CC=acc CFLAGS="-g -DNO_CLIENT_LONG_LONG" CXX=gcc
CXXFLAGS="-DNO_CLIENT_LONG_LONG" ./configure --disable-shared --without-server

Another way is after (because you are using a sparc) all my_ulonglong struct
entries in mysql.h add:

ulong dummy;


For example:

typedef struct st_mysql_data {
  my_ulonglong rows;
  unsigned int fields;
  MYSQL_ROWS *data;
  MEM_ROOT alloc;
} MYSQL_DATA;

->

typedef struct st_mysql_data {
  my_ulonglong rows;
#ifdef NO_CLIENT_LONG_LONG
  ulong dummy;
#endif
  unsigned int fields;
  MYSQL_ROWS *data;
  MEM_ROOT alloc;
} MYSQL_DATA;

Regards,
Monty
Thread
'Access Denied' for MySQL on win98Demon Energis13 Mar
  • 'Access Denied' for MySQL on win98Michael Widenius15 Mar