http://www.perlmonks.org?node_id=968815

taioba has asked for the wisdom of the Perl Monks concerning the following question:

Howdy! Either via cpan or when I try it manually, I always get the following message when installing DBD::mysql in Mac OS X 10.7 (I got gcc 4.2):

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 llvm-gcc-4.2 -c -I/System/Library/Perl/Extras/5.12/darwin-thread-mult +i-2level/auto/DBI -I/opt/local/include/mysql5/mysql -pipe -fPIC -m64 + -D_P1003_1B_VISIBLE -DSIGNAL_WITH_VIO_CLOSE -DSIGNALS_DONT_BREAK_R +EAD -DIGNORE_SIGHUP_SIGQUIT -DDONT_DECLARE_CXA_PURE_VIRTUAL -DDBD_MY +SQL_WITH_SSL -DDBD_MYSQL_INSERT_ID_IS_GOOD -g -arch x86_64 -arch i38 +6 -g -pipe -fno-common -DPERL_DARWIN -fno-strict-aliasing -fstack-pro +tector -I/usr/local/include -Os -DVERSION=\"4.021\" -DXS_VERSION=\" +4.021\" "-I/System/Library/Perl/5.12/darwin-thread-multi-2level/CORE +" dbdimp.c dbdimp.c: In function ‘mysql_describe’: dbdimp.c:3609: warning: assignment from incompatible pointer type dbdimp.c: In function ‘mysql_describe’: dbdimp.c:3609: warning: assignment from incompatible pointer type lipo: /var/folders/v1/hy10rvls1dbdw7k_0gqgmn8r0000gn/T//cctMX7MT.out a +nd /var/folders/v1/hy10rvls1dbdw7k_0gqgmn8r0000gn/T//ccm2GFgS.out hav +e the same architectures (x86_64) and can't be in the same fat output + file make: *** [dbdimp.o] Error 1

The line before the last that starts with 'lipo:' seems the most relevant, but I could be wrong. Any ideas? Thanks in advance!

Replies are listed 'Best First'.
Re: Problems installing DBD::mysql in Mac OS X 10.7
by Anonymous Monk on May 04, 2012 at 08:03 UTC

      OK, here you go: first, the line I used to generate the make file:

      perl Makefile.PL --testdb=test --testuser=root --testpassword=<passwor +d> --libs='-L/opt/local/lib -L/opt/local/lib/mysql5/mysql -lmysqld -l +dl -L/opt/local/lib -lz -lm -L/opt/local/lib/ -lssl -lcrypto' --mysql +_config=/opt/local/lib/mysql5/bin/mysql_config

      Then, the output of Makefile.pl

      I will use the following settings for compiling and testing: cflags (mysql_config ) = -I/opt/local/include/mysql5/mysql - +pipe -fPIC -m64 -D_P1003_1B_VISIBLE -DSIGNAL_WITH_VIO_CLOSE -DSIGNA +LS_DONT_BREAK_READ -DIGNORE_SIGHUP_SIGQUIT -DDONT_DECLARE_CXA_PURE_V +IRTUAL embedded (mysql_config ) = libs (User's choice) = -L/opt/local/lib -L/opt/local/lib/my +sql5/mysql -lmysqld -ldl -L/opt/local/lib -lz -lm -L/opt/local/lib/ - +lssl -lcrypto mysql_config (Users choice ) = /opt/local/lib/mysql5/bin/mysql_conf +ig nocatchstderr (default ) = 0 nofoundrows (default ) = 0 ssl (guessed ) = 1 testdb (User's choice) = test testhost (default ) = testpassword (User's choice) = <password> testsocket (default ) = testuser (User's choice) = root To change these settings, see 'perl Makefile.PL --help' and 'perldoc INSTALL'. Checking if your kit is complete... Looks good Using DBI 1.615 (for perl 5.012003 on darwin-thread-multi-2level) inst +alled in /System/Library/Perl/Extras/5.12/darwin-thread-multi-2level/ +auto/DBI/ Writing Makefile for DBD::mysql Writing MYMETA.yml and MYMETA.json

      And then make's output

      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 llvm-gcc-4.2 -c -I/System/Library/Perl/Extras/5.12/darwin-thread-mult +i-2level/auto/DBI -I/opt/local/include/mysql5/mysql -pipe -fPIC -m64 + -D_P1003_1B_VISIBLE -DSIGNAL_WITH_VIO_CLOSE -DSIGNALS_DONT_BREAK_R +EAD -DIGNORE_SIGHUP_SIGQUIT -DDONT_DECLARE_CXA_PURE_VIRTUAL -DDBD_MY +SQL_WITH_SSL -DDBD_MYSQL_INSERT_ID_IS_GOOD -g -arch x86_64 -arch i38 +6 -g -pipe -fno-common -DPERL_DARWIN -fno-strict-aliasing -fstack-pro +tector -I/usr/local/include -Os -DVERSION=\"4.021\" -DXS_VERSION=\" +4.021\" "-I/System/Library/Perl/5.12/darwin-thread-multi-2level/CORE +" dbdimp.c dbdimp.c: In function ‘mysql_describe’: dbdimp.c:3609: warning: assignment from incompatible pointer type dbdimp.c: In function ‘mysql_describe’: dbdimp.c:3609: warning: assignment from incompatible pointer type lipo: /var/folders/v1/hy10rvls1dbdw7k_0gqgmn8r0000gn/T//cczrvzA1.out a +nd /var/folders/v1/hy10rvls1dbdw7k_0gqgmn8r0000gn/T//ccpdhjjg.out hav +e the same architectures (x86_64) and can't be in the same fat output + file make: *** [dbdimp.o] Error 1

      I got this after a make realclean. MySQL was installed using MacPorts. Thanks!