Hi,

I uploaded PPM's for DBD::mysql 4.022 to the repository at http://www.wxperl.co.uk/repository

I already had the builds setup for Citrus Perl so it was not so big a task to build for ActivePerl.

PPM's available for Perl 5.12, 5.14, 5.16


The trick if you wish to build yourself in future is, for example, for an x86_64 / i386 fat binary:

Download and extract the mysql c connector for MacOSX 10.5 x86_64

in the lib directory, delete all the files and links except libmysqlclient.a

Rename libmysqlclient.a to libmysqlclient64.a

Download and extract the mysql C connector for MacOSX 10.5 i386

copy the libmysqlclient.a file from here to the lib folder of your x86_64 extract.

Rename this file libmysqlclient32.a

Change to the x86_64 lib directory in a terminal and lipo the two files together:

lipo -create libmysqlclient32.a libmysqlclient64.a -output libmysqlclient.a

You can then build with

perl Makefile.PL  --cflags=-I/path/to/mysqlconnector/include \
  --testdb='sometestdb' \
  --testhost='mysql.test.server' \
  --testport='3306' \
  --testuser='yourname' \
  --testpassword='yourpassword' \
  --mysql_config='/path/to/mysqlconnector/bin/mysql_config' \
  --libs='-L/path/to/mysqlconnector/lib -lmysqlclient'


For a ppc + i386 binary ( ActviePerl 5.12 and below ) download the mysql connector packages for 10.4 ppc and 10.4 i386 and repeat the procedure above.

I also used the attached patch in my build that I think I originally sourced from this list ( or a post here lead me to it)?


Hope it helps.


Mark



On 04/10/2012 08:53, Michiel Beijen wrote:
Hi, I just installed ActivePerl on OS X. When I set the PATH correctly
and I started PPM; I saw a screen flash briefly and then crash. PPM on
the command line works though.

Also, there seems to be no PPM package for DBD-mysql on OS X
available; even though DBD-mysql is, according to the PPM site, the
most popular PPM package.

http://code.activestate.com/ppm/DBD-mysql/

I think I'll uninstall and use CitrusPerl instead, for now.
--
Mike
_______________________________________________
ActivePerl mailing list
ActivePerl@listserv.ActiveState.com
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs


diff -ruNw DBD-mysql-4.022/dbdimp.c DBD-mysql-4.022-wcopy/dbdimp.c
--- DBD-mysql-4.022/dbdimp.c    2012-08-28 18:51:00.000000000 +0100
+++ DBD-mysql-4.022-wcopy/dbdimp.c      2012-10-12 06:05:02.628779500 +0100
@@ -3253,6 +3253,7 @@
       }
 #if MYSQL_ASYNC
   }
+#endif
   Safefree(salloc);
 
   if(rows == -2) {
@@ -3260,9 +3261,9 @@
              mysql_sqlstate(svsock));
     if (DBIc_TRACE_LEVEL(imp_xxh) >= 2)
       PerlIO_printf(DBIc_LOGPIO(imp_xxh), "IGNORING ERROR errno %d\n", errno);
-    rows = -2;
+ 
   }
-#endif
+
   return(rows);
 }
 
@@ -3840,6 +3841,7 @@
         default:
           if (DBIc_TRACE_LEVEL(imp_xxh) >= 2)
             PerlIO_printf(DBIc_LOGPIO(imp_xxh), "\t\tERROR IN 
st_fetch_string");
+          {
           STRLEN len= fbh->length;
        /* ChopBlanks */
           if (ChopBlanks)
@@ -3856,6 +3858,7 @@
        /* END OF ChopBlanks */
 
           sv_setpvn(sv, fbh->data, len);
+          }
 
        /* UTF8 */
         /*HELMUT*/
@@ -3892,8 +3895,7 @@
     {
       PerlIO_printf(DBIc_LOGPIO(imp_xxh), "\tdbd_st_fetch result set 
details\n");
       PerlIO_printf(DBIc_LOGPIO(imp_xxh), "\timp_sth->result=%08lx\n",(long 
unsigned int) imp_sth->result);
-      PerlIO_printf(DBIc_LOGPIO(imp_xxh), "\tmysql_num_fields=%llu\n",
-                    (long long unsigned int) 
mysql_num_fields(imp_sth->result));
+      PerlIO_printf(DBIc_LOGPIO(imp_xxh), "\tmysql_num_fields=%u\n", 
mysql_num_fields(imp_sth->result));
       PerlIO_printf(DBIc_LOGPIO(imp_xxh), "\tmysql_num_rows=%llu\n",
                     mysql_num_rows(imp_sth->result));
       PerlIO_printf(DBIc_LOGPIO(imp_xxh), "\tmysql_affected_rows=%llu\n",
_______________________________________________
ActivePerl mailing list
ActivePerl@listserv.ActiveState.com
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs

Reply via email to