compiling DBD-mysql

compiling DBD-mysql

am 29.06.2006 23:41:22 von chris.wagner

Greetz. Like a million other people, I'm trying to compile DBD::mysql
on Solaris 8. I installed ActiveState Perl from their website and MySQL
from their website. I was able to compile and install DBI with no
problems. But doing DBD-mysql fails. I installed gcc from
sunfreeware.com. I searched the whole system for mysql.o and it's not
there. I don't know what's supposed to provide it or where it's
supposed to be. Same with dbdimp.o. I tried Cpan shell too. Here's
all the particulars below. Any ideas? Thanks.

[root@netdisc DBD-mysql-3.0006]# uname -a
SunOS netdisc 5.8 Generic_117350-36 sun4u sparc SUNW,Sun-Fire-V240
[root@netdisc DBD-mysql-3.0006]# gcc -v
Reading specs from /usr/local/lib/gcc/sparc-sun-solaris2.8/3.4.2/specs
Configured with: ../configure --with-as=/usr/ccs/bin/as
--with-ld=/usr/ccs/bin/l
d --disable-nls
Thread model: posix
gcc version 3.4.2
[root@netdisc DBD-mysql-3.0006]# mysqld -V
mysqld Ver 5.0.21-standard for sun-solaris2.8 on sparc (MySQL Community
Edition
- Standard (GPL))

[root@netdisc DBD-mysql-3.0006]# perl Makefile.PL
Set up gcc environment - 3.4.2
I will use the following settings for compiling and testing:

cflags (mysql_config) = -I/opt/mysql/mysql/include -xO3 -mt
-D_FORTEC_
-xarch=v8
embedded (mysql_config) =
libs (mysql_config) = -L/opt/mysql/mysql/lib -lmysqlclient
-lz -lposi
x4 -lcrypt -lgen -lsocket -lnsl -lm
mysql_config (guessed ) = mysql_config
nocatchstderr (default ) = 0
nofoundrows (default ) = 0
ssl (guessed ) = 0
testdb (default ) = test
testhost (default ) =
testpassword (default ) =
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.51 (for perl 5.008008 on sun4-solaris-thread-multi)
installed in /op
t/ActivePerl-5.8/lib/site_perl/5.8.8/sun4-solaris-thread-mul ti/auto/DBI/
Writing Makefile for DBD::mysql
[root@netdisc DBD-mysql-3.0006]# 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/Mysql.pm blib/lib/Mysql.pm
cp lib/DBD/mysql/INSTALL.pod blib/lib/DBD/mysql/INSTALL.pod
cp lib/Mysql/Statement.pm blib/lib/Mysql/Statement.pm
cp lib/Bundle/DBD/mysql.pm blib/lib/Bundle/DBD/mysql.pm
gcc -c
-I/opt/ActivePerl-5.8/lib/site_perl/5.8.8/sun4-solaris-threa d-multi/auto
/DBI -I/opt/mysql/mysql/include -xO3 -mt -D_FORTEC_ -xarch=v8
-DDBD_MYSQL_INSERT
_ID_IS_GOOD -g -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT
-DUSE_SITECUSTOMIZE -DNO
_HASH_SEED -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
-fno-strict-aliasing -pipe
-O -DVERSION=\"3.0006\" -DXS_VERSION=\"3.0006\" -fPIC
"-I/opt/ActivePerl-5.8/
lib/5.8.8/sun4-solaris-thread-multi/CORE" dbdimp.c
gcc: language arch=v8 not recognized
gcc: dbdimp.c: linker input file unused because linking not done
/usr/bin/perl -p -e "s/~DRIVER~/mysql/g"
/opt/ActivePerl-5.8/lib/site_perl/5.8.8
/sun4-solaris-thread-multi/auto/DBI/Driver.xst > mysql.xsi
/usr/bin/perl /opt/ActivePerl-5.8/lib/5.8.8/ExtUtils/xsubpp -typemap
/opt/Activ
ePerl-5.8/lib/5.8.8/ExtUtils/typemap mysql.xs > mysql.xsc && mv
mysql.xsc mysql
..c
Warning: duplicate function definition 'do' detected in mysql.xs, line
224
Warning: duplicate function definition 'rows' detected in mysql.xs, line
567
gcc -c
-I/opt/ActivePerl-5.8/lib/site_perl/5.8.8/sun4-solaris-threa d-multi/auto
/DBI -I/opt/mysql/mysql/include -xO3 -mt -D_FORTEC_ -xarch=v8
-DDBD_MYSQL_INSERT
_ID_IS_GOOD -g -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT
-DUSE_SITECUSTOMIZE -DNO
_HASH_SEED -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
-fno-strict-aliasing -pipe
-O -DVERSION=\"3.0006\" -DXS_VERSION=\"3.0006\" -fPIC
"-I/opt/ActivePerl-5.8/
lib/5.8.8/sun4-solaris-thread-multi/CORE" mysql.c
gcc: language arch=v8 not recognized
gcc: mysql.c: linker input file unused because linking not done
Running Mkbootstrap for DBD::mysql ()
chmod 644 mysql.bs
rm -f blib/arch/auto/DBD/mysql/mysql.so
LD_RUN_PATH="/usr/lib" /usr/bin/perl myld gcc -G -L/usr/lib
-L/usr/ccs/lib -L/o
pt/SUNWspro/WS6U2/lib dbdimp.o mysql.o -o
blib/arch/auto/DBD/mysql/mysql.so
\
-L/opt/mysql/mysql/lib -lmysqlclient -lz -lposix4 -lcrypt -lgen
-lsocket -lns
l -lm \

gcc: dbdimp.o: No such file or directory
gcc: mysql.o: No such file or directory
make: *** [blib/arch/auto/DBD/mysql/mysql.so] Error 1
[root@netdisc DBD-mysql-3.0006]#



--
Chris Wagner
CBTS
GE Aircraft Engines
Chris.Wagner@ae.ge.com

--
MySQL Perl Mailing List
For list archives: http://lists.mysql.com/perl
To unsubscribe: http://lists.mysql.com/perl?unsub=gcdmp-msql-mysql-modules@m .gmane.org

Re: compiling DBD-mysql

am 29.06.2006 23:57:50 von chris.wagner

I think I discovered something. After reading more posts I decided
trying removing some possibly offending switches from the gcc command
line. I edited the Makefile and removed -xO3 -mt -D_FORTEC_ from the
INC variable I believe it was. Lo and behold it compiled. Does this
seem like a valid fix? Or is it just delaying a disaster for later.
And why did Makefile.PL make it like that in the first place?

"Wagner, Chris (GEAE, CBTS)" wrote:
> gcc -c
> -I/opt/ActivePerl-5.8/lib/site_perl/5.8.8/sun4-solaris-threa d-multi/auto
> /DBI -I/opt/mysql/mysql/include -xO3 -mt -D_FORTEC_ -xarch=v8
> -DDBD_MYSQL_INSERT
> _ID_IS_GOOD -g -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT
> -DUSE_SITECUSTOMIZE -DNO
> _HASH_SEED -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
> -fno-strict-aliasing -pipe
> -O -DVERSION=\"3.0006\" -DXS_VERSION=\"3.0006\" -fPIC
> "-I/opt/ActivePerl-5.8/
> lib/5.8.8/sun4-solaris-thread-multi/CORE" mysql.c




--
Chris Wagner
CBTS
GE Aircraft Engines
Chris.Wagner@ae.ge.com

--
MySQL Perl Mailing List
For list archives: http://lists.mysql.com/perl
To unsubscribe: http://lists.mysql.com/perl?unsub=gcdmp-msql-mysql-modules@m .gmane.org