Patrick,
In attachment I have retraced my steps of building DBD::Mysql. It's build on
top of the latest DBI 1.601 and Mysql 5.0.51 (custom built).
Let me know how it works out for you :)
Hendrik
On Dec 10, 2007 3:48 PM, Patrick Galbraith <patg@stripped> wrote:
> Hendrik Van Belleghem wrote:
>
> >Hi
> >
> >I'm having some trouble with DBD::Mysql under mod_perl2 on Leopard.
> >The build process when just fine, make test didn't show any errors and
> >running it in console and as CGI didn't show any errors. I already tried
> >adding "PerlSetEnv LD_LIBRARY_PATH
> '/usr/local/mysql/lib/mysql/:/usr/lib'"
> >and "SetEnv LD_LIBRARY_PATH /usr/local/mysql/lib/mysql" to my
> configuration
> >(which points to the libmysqlclient.15.dylib file)
> >
> >
> >
> Strange - this error looks like it's trying to compile in embedded
> support "_mysql_server_init"
>
> Are you trying to compile in embedded? What are the steps you're taking
> to compile?
>
> I'm the maintainer of DBD:mysql and will be upgrading my own mac that I
> do dev on to Leopard this week hopefully and can see if I can duplicate
> this error.
>
>
> >The error log includes these messages for every request sent:
> >
> >dyld: lazy symbol binding failed: Symbol not found: _mysql_server_init
> > Referenced from:
>
> >/Library/Perl/5.8.8/darwin-thread-multi-2level/auto/DBD/mysql/mysql.bundle
> > Expected in: dynamic lookup
> >
> >dyld: Symbol not found: _mysql_server_init
> > Referenced from:
>
> >/Library/Perl/5.8.8/darwin-thread-multi-2level/auto/DBD/mysql/mysql.bundle
> > Expected in: dynamic lookup
> >
> >[Sun Dec 09 23:16:22 2007] [notice] child pid 439 exit signal Trace/BPT
> trap
> >(5)
> >
> >Any ideas?
> >
> >
> >
>
>
> --
> Patrick Galbraith, Senior Programmer
> Grazr - Easy feed grazing and sharing
> http://www.grazr.com
>
> Satyam Eva Jayate - Truth Alone Triumphs
> Mundaka Upanishad
>
>
>
>
--
Hendrik Van Belleghem
Spine - The backbone for your website - http://spine.sf.net
Attachment: [text/html]
Attachment: [text/html]
Last login: Mon Dec 10 22:09:54 on ttys000
lenore:~ hendrik$ su -
Password:
lenore:~ root# cd /home/hendrik/Downloads/DBD-mysql-4.005
lenore:DBD-mysql-4.005 root# make clean
make: *** No rule to make target `clean'. Stop.
lenore:DBD-mysql-4.005 root# export CFLAGS="-arch i386 -arch ppc -arch ppc64 -arch x86_64"
lenore:DBD-mysql-4.005 root# export ARCHFLAGS="-arch i386 -arch ppc -arch ppc64 -arch x86_64"
lenore:DBD-mysql-4.005 root# export PATH="$PATH:/usr/local/mysql/bin"
lenore:DBD-mysql-4.005 root# /usr/local/mysql/bin/mysqld_safe &
[1] 1530
lenore:DBD-mysql-4.005 root# A mysqld process already exists
[1]+ Done(1) /usr/local/mysql/bin/mysqld_safe
lenore:DBD-mysql-4.005 root# perl Makefile.PL --CFLAGS="-I/usr/local/mysql/include -Os -arch i386 -arch ppc -arch ppc64 -arch x86_64 -fno-common" --libs="-L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lm" --testpassword="foobar"
I will use the following settings for compiling and testing:
cflags (User's choice) = -I/usr/local/mysql/include -Os -arch i386 -arch ppc -arch ppc64 -arch x86_64 -fno-common
embedded (mysql_config ) =
libs (User's choice) = -L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lm
mysql_config (guessed ) = mysql_config
nocatchstderr (default ) = 0
nofoundrows (default ) = 0
ssl (guessed ) = 0
testdb (default ) = test
testhost (default ) =
testpassword (User's choice) = foobar
testsocket (default ) =
testuser (default ) =
To change these settings, see 'perl Makefile.PL --help' and
'perldoc INSTALL'.
Checking if your kit is complete...
Looks good
Using DBI 1.601 (for perl 5.008008 on darwin-thread-multi-2level) installed in /Library/Perl/5.8.8/darwin-thread-multi-2level/auto/DBI/
Writing Makefile for DBD::mysql
lenore:DBD-mysql-4.005 root# make
cp lib/DBD/mysql.pm blib/lib/DBD/mysql.pm
cp lib/DBD/mysql/GetInfo.pm blib/lib/DBD/mysql/GetInfo.pm
cp lib/DBD/mysql/INSTALL.pod blib/lib/DBD/mysql/INSTALL.pod
cp lib/Bundle/DBD/mysql.pm blib/lib/Bundle/DBD/mysql.pm
cc -c -I/Library/Perl/5.8.8/darwin-thread-multi-2level/auto/DBI -I/usr/local/mysql/include -Os -arch i386 -arch ppc -arch ppc64 -arch x86_64 -fno-common -DDBD_MYSQL_INSERT_ID_IS_GOOD -g -arch i386 -arch ppc -arch ppc64 -arch x86_64 -g -pipe -fno-common -DPERL_DARWIN -no-cpp-precomp -fno-strict-aliasing -Wdeclaration-after-statement -I/usr/local/include -O3 -DVERSION=\"4.005\" -DXS_VERSION=\"4.005\" "-I/System/Library/Perl/5.8.8/darwin-thread-multi-2level/CORE" dbdimp.c
dbdimp.c: In function 'mysql_describe':
dbdimp.c: In function 'mysql_describe':
dbdimp.c:3250: warning: assignment from incompatible pointer type
dbdimp.c:3250: warning: assignment from incompatible pointer type
dbdimp.c: In function 'mysql_describe':
dbdimp.c:3250: warning: assignment from incompatible pointer type
dbdimp.c: In function 'mysql_describe':
dbdimp.c:3250: warning: assignment from incompatible pointer type
/usr/bin/perl -p -e "s/~DRIVER~/mysql/g" /Library/Perl/5.8.8/darwin-thread-multi-2level/auto/DBI/Driver.xst > mysql.xsi
/usr/bin/perl /System/Library/Perl/5.8.8/ExtUtils/xsubpp -typemap /System/Library/Perl/5.8.8/ExtUtils/typemap mysql.xs > mysql.xsc && mv mysql.xsc mysql.c
Warning: duplicate function definition 'do' detected in mysql.xs, line 225
Warning: duplicate function definition 'rows' detected in mysql.xs, line 612
cc -c -I/Library/Perl/5.8.8/darwin-thread-multi-2level/auto/DBI -I/usr/local/mysql/include -Os -arch i386 -arch ppc -arch ppc64 -arch x86_64 -fno-common -DDBD_MYSQL_INSERT_ID_IS_GOOD -g -arch i386 -arch ppc -arch ppc64 -arch x86_64 -g -pipe -fno-common -DPERL_DARWIN -no-cpp-precomp -fno-strict-aliasing -Wdeclaration-after-statement -I/usr/local/include -O3 -DVERSION=\"4.005\" -DXS_VERSION=\"4.005\" "-I/System/Library/Perl/5.8.8/darwin-thread-multi-2level/CORE" mysql.c
mysql.xs: In function 'XS_DBD__mysql__db_do':
mysql.xs:315: warning: comparison is always false due to limited range of data type
mysql.xs:316: warning: comparison is always false due to limited range of data type
mysql.xs: In function 'XS_DBD__mysql__db_do':
mysql.xs:315: warning: comparison is always false due to limited range of data type
mysql.xs:316: warning: comparison is always false due to limited range of data type
Running Mkbootstrap for DBD::mysql ()
chmod 644 mysql.bs
rm -f blib/arch/auto/DBD/mysql/mysql.bundle
LD_RUN_PATH="/usr/local/mysql/lib/mysql:/usr/lib" /usr/bin/perl myld cc -mmacosx-version-min=10.5 -arch i386 -arch ppc -arch ppc64 -arch x86_64 -bundle -undefined dynamic_lookup -L/usr/local/lib dbdimp.o mysql.o -o blib/arch/auto/DBD/mysql/mysql.bundle \
-L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lm \
chmod 755 blib/arch/auto/DBD/mysql/mysql.bundle
cp mysql.bs blib/arch/auto/DBD/mysql/mysql.bs
chmod 644 blib/arch/auto/DBD/mysql/mysql.bs
Manifying blib/man3/DBD::mysql.3pm
Manifying blib/man3/DBD::mysql::INSTALL.3pm
Manifying blib/man3/Bundle::DBD::mysql.3pm
lenore:DBD-mysql-4.005 root# make test
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/00base.............ok
t/10connect..........ok
t/20createdrop.......ok
t/30insertfetch......ok
t/35limit............ok
t/35prepare..........ok
t/40bindparam........ok
t/40bindparam2.......ok
t/40blobs............ok
t/40catalog..........ok
t/40listfields.......ok
t/40nulls............ok
t/40numrows..........ok
t/41bindparam........ok
t/41blobs_prepare....ok
t/42bindparam........ok
t/50chopblanks.......ok
t/50commit...........ok
t/60leaks............skipped
all skipped: $ENV{SLOW_TESTS} is not set
t/70takeimp..........skipped
all skipped: test feature not implemented
t/75supported_sql....ok
t/80procs............ok
t/insertid...........ok
t/multi_statement....ok
t/param_values.......ok
t/prepare_noerror....ok
t/texecute...........ok
t/utf8...............ok
All tests successful, 2 tests skipped.
Files=28, Tests=584, 3 wallclock secs ( 1.71 cusr + 0.44 csys = 2.15 CPU)
lenore:DBD-mysql-4.005 root# make install
Installing /Library/Perl/5.8.8/darwin-thread-multi-2level/auto/DBD/mysql/mysql.bundle
Files found in blib/arch: installing files in blib/lib into architecture dependent library tree
Writing /Library/Perl/5.8.8/darwin-thread-multi-2level/auto/DBD/mysql/.packlist
Appending installation info to /System/Library/Perl/5.8.8/darwin-thread-multi-2level/perllocal.pod
lenore:DBD-mysql-4.005 root#
lenore:DBD-mysql-4.005 root# echo $LD_LIBRARY_PATH
/usr/local/mysql/lib:
lenore:DBD-mysql-4.005 root# ls -lah /usr/local/mysql/lib
total 0
drwxr-xr-x 3 root wheel 102B Dec 7 18:19 .
drwxr-xr-x 12 root wheel 408B Dec 7 18:09 ..
drwxr-xr-x 20 root wheel 680B Dec 7 18:21 mysql
lenore:DBD-mysql-4.005 root# ls -lah /usr/local/mysql/lib/mysql/
total 15464
drwxr-xr-x 20 root wheel 680B Dec 7 18:21 .
drwxr-xr-x 3 root wheel 102B Dec 7 18:19 ..
lrwxr-xr-x 1 root wheel 20B Dec 7 18:21 lib -> /usr/local/mysql/lib
-rw-r--r-- 1 root wheel 14K Dec 7 18:19 libdbug.a
-rw-r--r-- 1 root wheel 44K Dec 7 18:19 libheap.a
-rw-r--r-- 1 root wheel 381K Dec 7 18:19 libmyisam.a
-rw-r--r-- 1 root wheel 21K Dec 7 18:19 libmyisammrg.a
-rwxr-xr-x 1 root wheel 1.3M Dec 7 18:19 libmysqlclient.15.0.0.dylib
lrwxr-xr-x 1 root wheel 27B Dec 7 18:19 libmysqlclient.15.dylib -> libmysqlclient.15.0.0.dylib
-rw-r--r-- 1 root wheel 1.5M Dec 7 18:19 libmysqlclient.a
lrwxr-xr-x 1 root wheel 27B Dec 7 18:19 libmysqlclient.dylib -> libmysqlclient.15.0.0.dylib
-rwxr-xr-x 1 root wheel 877B Dec 7 18:19 libmysqlclient.la
-rwxr-xr-x 1 root wheel 1.3M Dec 7 18:19 libmysqlclient_r.15.0.0.dylib
lrwxr-xr-x 1 root wheel 29B Dec 7 18:19 libmysqlclient_r.15.dylib -> libmysqlclient_r.15.0.0.dylib
-rw-r--r-- 1 root wheel 1.5M Dec 7 18:19 libmysqlclient_r.a
lrwxr-xr-x 1 root wheel 29B Dec 7 18:19 libmysqlclient_r.dylib -> libmysqlclient_r.15.0.0.dylib
-rwxr-xr-x 1 root wheel 891B Dec 7 18:19 libmysqlclient_r.la
-rw-r--r-- 1 root wheel 1.2M Dec 7 18:19 libmystrings.a
-rw-r--r-- 1 root wheel 289K Dec 7 18:19 libmysys.a
-rw-r--r-- 1 root wheel 6.5K Dec 7 18:19 libvio.a
lenore:DBD-mysql-4.005 root#