Keith L. Stephenson | 1 Jul 2002 23:00

myisamchk: warning: 1 clients is using or hasn't closed the table properly

I can't find out where to get any info on this problem.
Can you help?
I am using perl on RedHat 7.2.
I keep getting these messages even though my code uses $sth->finish;
Where do these come from or how do I properly close a table when done?
I've looked at all the reasons at:http://www.mysql.com/doc/M/y/MyISAM_table_close.html
and none of these apply to me.
This is an http site where all access is perl cgi.
What can I do to investigate or eliminate this problem?

Thanks,
Keith
myisamchk: warning: 1 clients is using or hasn't closed the table properly

Kip C. Lubliner | 1 Jul 2002 23:28

One more time: install using static libmysqlclient.a, not root

Hello,

I wasn't subscribed to the list when I first sent out this message, and
I'm not sure if it went out.  If someone did respond, I would appreciate
it if they forwarded the message(s) to me.

Sorry for the mixup,
Kip

---------- Forwarded message ----------
Date: Fri, 28 Jun 2002 13:31:07 -0400 (EDT)
From: Kip C. Lubliner <kip <at> acm.jhu.edu>
Reply-To: kip <at> jhuacm.org
To: msql-mysql-modules <at> lists.mysql.com
Subject: install using static libmysqlclient.a, not root

Hello,
I am trying to install DBD::Mysql on a freeBSD box.  MySQL isn't installed
as root, it is installed in the user directory.

I wasn't the one to install the Mysql server, but the following files
exist:

~/usr/local/mysql/lib/mysql/libmysqlclient.a
~/usr/local/mysql/include/mysql/mysql.h

I have installed DBD and Data::ShowTable to
~/perllibs
by using CPAN, setting LIB= that dir.

(Continue reading)

Jay Lawrence | 1 Jul 2002 23:51

Re: One more time: install using static libmysqlclient.a, not root


Kip,

Maybe you need to add a "-static" option to your CFLAGS when you run 
Makefile.PL. Haven't built a static linked DBD myself....

Jay

On July 1, 2002 05:28 pm, Kip C. Lubliner wrote:
> Hello,
>
> I wasn't subscribed to the list when I first sent out this message, and
> I'm not sure if it went out.  If someone did respond, I would appreciate
> it if they forwarded the message(s) to me.
>
> Sorry for the mixup,
> Kip
>
> ---------- Forwarded message ----------
> Date: Fri, 28 Jun 2002 13:31:07 -0400 (EDT)
> From: Kip C. Lubliner <kip <at> acm.jhu.edu>
> Reply-To: kip <at> jhuacm.org
> To: msql-mysql-modules <at> lists.mysql.com
> Subject: install using static libmysqlclient.a, not root
>
> Hello,
> I am trying to install DBD::Mysql on a freeBSD box.  MySQL isn't installed
> as root, it is installed in the user directory.
>
> I wasn't the one to install the Mysql server, but the following files
(Continue reading)

Kip C. Lubliner | 2 Jul 2002 23:11

Re: One more time: install using static libmysqlclient.a, not root

After much digging, I discovered that I am running MySQL 3.22, which
doesn't have the 'mysql_real_escape_string' function.  I replaced it with
the 'mysql_escape_string' function, which doesn't respect locales, thusly:

// dbdimp.c

#if defined(WIN32)  &&  defined(WORD)
    /*  Don't exactly know who's responsible for defining WORD ... :-(  */
#undef WORD
typedef short WORD;
#endif

#if MYSQL_VERSION_ID < 32314
#define mysql_real_escape_string(ignore, to, from, from_length) \
                mysql_escape_string(to, from, from_length)
#endif

DBISTATE_DECLARE;

On Mon, 1 Jul 2002, Jay Lawrence wrote:

>
> Kip,
>
> Maybe you need to add a "-static" option to your CFLAGS when you run
> Makefile.PL. Haven't built a static linked DBD myself....
>
> Jay
>
> On July 1, 2002 05:28 pm, Kip C. Lubliner wrote:
(Continue reading)

Jason | 4 Jul 2002 00:58

can't seem to statically link DBD-mysql against libmysqlclient.a

howdy

I'm using DBD-mysql-2.1011, perl 5.005_003 (same problem on 5.6)

here's my command line:

perl Makefile.PL LIB=/opt/foo PREFIX=/opt/foo "--libs=../pathto/libmysqlclient.a -lz -lnsl
-lcrypt -lm" "--cflags=-I../pathto/include -I../pathto/otherinclude"

and it tells me this:

...

cflags        (Users choice) = -I../pathto/include -I../pathto/otherinclude
  libs          (Users choice) = ../pathto/libmysqlclient.a -lz -lnsl -lcrypt -lm
  nocatchstderr (default     ) = 0
  testdb        (default     ) = test
  testhost      (default     ) = 
  testpassword  (default     ) = 
  testuser      (default     ) = 

...

Unrecognized argument in LIBS ignored: './pathto/libmysqlclient.a'

I've also tried absolute paths, no luck.  What am I missing?

--

-- 
Jason Burnett  
jason <at> jnj.org      
(Continue reading)

Kip C. Lubliner | 4 Jul 2002 05:48

Re: can't seem to statically link DBD-mysql against libmysqlclient.a

You need to use '--libs=-L./path -lmysqlclient'
You didn't see the -L

On Wed, 3 Jul 2002, Jason wrote:

> howdy
>
> I'm using DBD-mysql-2.1011, perl 5.005_003 (same problem on 5.6)
>
> here's my command line:
>
> perl Makefile.PL LIB=/opt/foo PREFIX=/opt/foo "--libs=../pathto/libmysqlclient.a -lz -lnsl
-lcrypt -lm" "--cflags=-I../pathto/include -I../pathto/otherinclude"
>
> and it tells me this:
>
> ...
>
> cflags        (Users choice) = -I../pathto/include -I../pathto/otherinclude
>   libs          (Users choice) = ../pathto/libmysqlclient.a -lz -lnsl -lcrypt -lm
>   nocatchstderr (default     ) = 0
>   testdb        (default     ) = test
>   testhost      (default     ) =
>   testpassword  (default     ) =
>   testuser      (default     ) =
>
> ...
>
> Unrecognized argument in LIBS ignored: './pathto/libmysqlclient.a'
>
(Continue reading)

Jason | 4 Jul 2002 06:07

Re: can't seem to statically link DBD-mysql against libmysqlclient.a

On Wed, Jul 03, 2002 at 11:48:53PM -0400, Kip C. Lubliner wrote:
> You need to use '--libs=-L./path -lmysqlclient'
> You didn't see the -L
> 

that does dynamic linking.  I want to link statically.  In a normal make
environment, if you want dynamic linking, you do:

cc object1.o object2.o -o program -lsomelib 

whereas if you want to link statically, you do:

cc object1.o object2.o /path/to/libsomelib.a -o program 

I ended up having to use a hacked up copy of ExtUtils/MM_unix.pm from the
standard perl library to get it to work.  There doesn't seem to be a way to do
it with recent versions of makemaker...

--

-- 
Jason Burnett  
jason <at> jnj.org      
~ No witty signature available at this time ~

---------------------------------------------------------------------
Please check "http://www.mysql.com/Manual_chapter/manual_toc.html" before
posting. To request this thread, e-mail msql-mysql-modules-thread1847 <at> lists.mysql.com

To unsubscribe, send a message to the address shown in the
List-Unsubscribe header of this message. If you cannot see it,
e-mail msql-mysql-modules-unsubscribe <at> lists.mysql.com instead.
(Continue reading)

Kip C. Lubliner | 4 Jul 2002 06:12

Re: can't seem to statically link DBD-mysql against libmysqlclient.a

You must create a dynamicly loadable file for DynaLoader to work.  If you
want to create a staticly linked file, you must recompile perl.  And thats
a pain.

If you have a libmysqlclient.a, you can create a dynamically loadable
mysql.so and have that work.  It worked for me, in any case.

On Wed, 3 Jul 2002, Jason wrote:

> On Wed, Jul 03, 2002 at 11:48:53PM -0400, Kip C. Lubliner wrote:
> > You need to use '--libs=-L./path -lmysqlclient'
> > You didn't see the -L
> >
>
> that does dynamic linking.  I want to link statically.  In a normal make
> environment, if you want dynamic linking, you do:
>
> cc object1.o object2.o -o program -lsomelib
>
> whereas if you want to link statically, you do:
>
> cc object1.o object2.o /path/to/libsomelib.a -o program
>
> I ended up having to use a hacked up copy of ExtUtils/MM_unix.pm from the
> standard perl library to get it to work.  There doesn't seem to be a way to do
> it with recent versions of makemaker...
>
>

---------------------------------------------------------------------
(Continue reading)

Jason | 4 Jul 2002 06:23

Re: can't seem to statically link DBD-mysql against libmysqlclient.a

On Thu, Jul 04, 2002 at 12:12:50AM -0400, Kip C. Lubliner wrote:
> You must create a dynamicly loadable file for DynaLoader to work.  If you
> want to create a staticly linked file, you must recompile perl.  And thats
> a pain.
> 
> If you have a libmysqlclient.a, you can create a dynamically loadable
> mysql.so and have that work.  It worked for me, in any case.
> 

right, the second one is what I want.  I could find no way to get makemaker
to let me supply libmysqlclient.a as an object to link into mysql.so.

The MM_unix hack works fine, but it obviously wasn't a simple solution :)

--

-- 
Jason Burnett  
jason <at> jnj.org      
~ No witty signature available at this time ~

---------------------------------------------------------------------
Please check "http://www.mysql.com/Manual_chapter/manual_toc.html" before
posting. To request this thread, e-mail msql-mysql-modules-thread1849 <at> lists.mysql.com

To unsubscribe, send a message to the address shown in the
List-Unsubscribe header of this message. If you cannot see it,
e-mail msql-mysql-modules-unsubscribe <at> lists.mysql.com instead.

AracTelNetworks | 4 Jul 2002 22:58

errors

hi,

Im on a red hat 7.2 ensim machine, when i install the DBD-mysql-2.1017 module i get the follwing errors:

[root <at> ensim DBD-mysql-2.1017]# perl Makefile.PL
I will use the following settings for compiling and testing:

  cflags        (mysql_config) = -I'/usr/include/mysql'
  libs          (mysql_config) = -L/usr/lib/mysql -lmysqlclient -lz -lcrypt -lnsl -lm
  nocatchstderr (default     ) = 0
  ssl           (guessed     ) = 0
  testdb        (default     ) = test
  testhost      (default     ) =
  testpassword  (default     ) =
  testuser      (default     ) =

To change these settings, see 'perl Makefile.PL --help' and
'perldoc INSTALL'.

Using DBI 1.18 installed in /usr/lib/perl5/site_perl/5.6.0/i386-linux/auto/DBI
Writing Makefile for DBD::mysql

[root <at> ensim DBD-mysql-2.1017]# make
gcc -c -I/usr/lib/perl5/site_perl/5.6.0/i386-linux/auto/DBI -I'/usr/include/mysql'
-fno-strict-aliasing -I/usr/local/include -O2 -march=i386 -mcpu=i686     -DVERSION=\"2.1017\"
-DXS_VERSION=\"2.1017\" -fPIC -I/usr/lib/perl5/5.6.0/i386-linux/CORE  dbdimp.c
make: gcc: Command not found
make: *** [dbdimp.o] Error 127
[root <at> ensim DBD-mysql-2.1017]#

(Continue reading)


Gmane