PEPPLER.ORG
Michael Peppler
Sybase Consulting
Menu
Home
Sybase on Linux
Install Guide for Sybase on Linux
General Sybase Resources
General Perl Resources
Freeware
Sybperl
Sybase::Simple
DBD::Sybase
BCP Tool
Bug Tracker
Mailing List Archive
Downloads Directory
FAQs
Sybase on Linux FAQ
Sybperl FAQ
Personal
Michael Peppler's resume

sybperl-l Archive

Up    Prev    Next    

From: "David E Shapiro" <shapi003 at mc dot duke dot edu>
Subject: Error while make test
Date: Apr 9 1999 12:48PM

Hello,
I am having an error occur during make test.  Here is information on the
steps leading up to the error.  Note that my environment variables are as
such:

MANPATH=/opt/gnu/man:/usr/share/man:/opt/datatools/sbacktrack/man
HZ=100
PATH=/opt/sybase/r11/bin:/usr/bin:/usr/sbin:/usr/ccs/bin:/usr/ucb:/opt/FSFg
zip/bin:/opt/GCC281/bin:/opt/bin
SYBASE_TERM=xterm_c.sun
EDITOR=vi
LOGNAME=root
DSMI_CONFIG=/opt/datatools/obsi.adsm/dsm
DTBASE=/opt/datatools
SYBASE=/opt/sybase/r11
DTHOME=/opt/datatools
SHELL=/bin/ksh
PERLLIB=/opt/lib/perl5/5.00502
HOME=/
TERM=vt100
LD_LIBRARY_PATH=/opt/sybase:/opt/sybase/r11/lib:/opt/datatools/obsi.adsm/ds
m:/opt/lib/perl5/5.00502
PWD=/home/shapi003/sybperl-2.10
TZ=US/Eastern
DBASYB=/opt/sybase
EBTRC=/opt/sybase/sybooks/sun5m/.ebtrc
SYBROOT=/opt/sybase/sybooks
SYBBAT=/opt/sybase/bat
DSMI_DIR=/opt/datatools/obsi.adsm/dsm
DT_SBACKTRACK_HOME=/opt/datatools/sbacktrack

I used the following CONFIG on solaris 2.6 on a SUN Sparc:

# Set to 0 if you do not want to build DBlib or if DBlib is not available.
DBLIBVS=1000


# CTlib version. Set to 0 if Client Library is not available on your
# system, or if you don't want to build the CTlib module. The Client
# Library started shipping with System 10.
# Set to 100 if you have OpenClient 10.x or later.
#CTLIBVS=100
CTLIBVS=100

# Where is the Sybase directory on your system (include files &
# libraries are expected to be found at SYBASE/include & SYBASE/lib
SYBASE=/opt/sybase

# Additional libraries.
# Some systems require -lnsl or -lBSD.
# Solaris 2.x needs -ltli
# DEC OSF/1 needs -ldnet_stub and may need -lsdna
#   (Note: Under Dec 3.2 you need to *remove* -lsdna from the
DBlib/Makefile
#    for things to work. *sigh*)
# SunOS 4.x needs -linsck
# HP-UX 10.x needs -linsck
# AIX 3.2.5 needs -linsck
# Linux needs -linsck
# See the Sybase OpenClient Supplement for your OS/Hardware
# combination.
EXTRA_LIBS=-ltli

# Library directory. Under Windows/NT, if you are using the Borland
# compilers, then uncomment the line below:
# BORLAND_LIBS=blib

# Additional #defines.
# With Perl 5.001m, you will need -DUNDEF_BUG.
# With Perl 5.002, none are normally needed, but you may wish to
# use -DDO_TIE to get the benefit of stricter checking on the
# Sybase::DBlib and Sybase::CTlib attributes.
# Use -DNCR_BUG if you are on NCR 3.0 and OpenClient 10.0.x
EXTRA_DEFS=-DDO_TIE


# LINKTYPE
# If you wish to link Sybase::DBlib and/or Sybase::CTlib statically
# into perl uncomment the line below and run the make normally. Then,
# when you run 'make test' a new perl binary will be built.
LINKTYPE=static

The perl Makefile.PL did not return any errors.  I had done a make clean
prior.  The make did the following:

# make
mkdir blib
mkdir blib/lib
mkdir blib/arch
mkdir blib/arch/auto
mkdir blib/arch/auto/Sybase
mkdir blib/lib/auto
mkdir blib/lib/auto/Sybase
cp config.pl blib/lib/config.pl
cp lib/sql.pl blib/lib/sql.pl
cp lib/sybperl.pl blib/lib/sybperl.pl
cp lib/sybutil.pl blib/lib/sybutil.pl
cp lib/ctutil.pl blib/lib/ctutil.pl
mkdir ../blib/lib/Sybase
mkdir ../blib/arch/auto/Sybase/BCP
mkdir ../blib/lib/auto/Sybase/BCP
mkdir ../blib/man3
cp BCP.pm ../blib/lib/Sybase/BCP.pm
Manifying ../blib/man3/Sybase::BCP.3
mkdir ../blib/arch/auto/Sybase/CTlib
mkdir ../blib/lib/auto/Sybase/CTlib
cp CTlib.pm ../blib/lib/Sybase/CTlib.pm
AutoSplitting ../blib/lib/Sybase/CTlib.pm (../blib/lib/auto/Sybase/CTlib)
/usr/bin/perl -I/opt/lib/perl5/5.00502/sun4-solaris
-I/opt/lib/perl5/5.00502 /opt/lib/perl5/5.00502/ExtUtils/xsubpp -prototypes
 -typ
emap /opt/lib/perl5/5.00502/ExtUtils/typemap CTlib.xs >CTlib.tc && mv
CTlib.tc CTlib.c
gcc -c -I/opt/sybase/r11/include  -O     -DVERSION=\"2.10\"
-DXS_VERSION=\"2.10\" -fPIC -I/opt/lib/perl5/5.00502/sun4-solaris/CORE
-DCTLIBVS=100 -DSYBPLVER='"2.10"' -DDO_TIE CTlib.c
rm -rf ../blib/arch/auto/Sybase/CTlib/CTlib.a
ar cr ../blib/arch/auto/Sybase/CTlib/CTlib.a CTlib.o && :
../blib/arch/auto/Sybase/CTlib/CTlib.a
chmod 755 ../blib/arch/auto/Sybase/CTlib/CTlib.a
mkdir ../blib/arch/auto/Sybase/DBlib
mkdir ../blib/lib/auto/Sybase/DBlib
cp DBlib.pm ../blib/lib/Sybase/DBlib.pm
AutoSplitting ../blib/lib/Sybase/DBlib.pm (../blib/lib/auto/Sybase/DBlib)
/usr/bin/perl -I/opt/lib/perl5/5.00502/sun4-solaris
-I/opt/lib/perl5/5.00502 /opt/lib/perl5/5.00502/ExtUtils/xsubpp -prototypes
 -typ
emap /opt/lib/perl5/5.00502/ExtUtils/typemap DBlib.xs >DBlib.tc && mv
DBlib.tc DBlib.c
gcc -c -I/opt/sybase/r11/include  -O     -DVERSION=\"2.10\"
-DXS_VERSION=\"2.10\" -fPIC -I/opt/lib/perl5/5.00502/sun4-solaris/CORE
-DDBLIBVS=1000 -DSYBPLVER='"2.10"' -DDO_TIE DBlib.c
rm -rf ../blib/arch/auto/Sybase/DBlib/DBlib.a
ar cr ../blib/arch/auto/Sybase/DBlib/DBlib.a DBlib.o && :
../blib/arch/auto/Sybase/DBlib/DBlib.a
chmod 755 ../blib/arch/auto/Sybase/DBlib/DBlib.a
mkdir ../blib/arch/auto/Sybase/Sybperl
mkdir ../blib/lib/auto/Sybase/Sybperl
cp Sybperl.pm ../blib/lib/Sybase/Sybperl.pm
AutoSplitting ../blib/lib/Sybase/Sybperl.pm
(../blib/lib/auto/Sybase/Sybperl)

Finally, the make test does the following:

# make test
Writing "Makefile.aperl" for this perl
Writing Makefile.aperl for Sybase
make -f Makefile.aperl perl
Writing perlmain.c
cd . && gcc -c  -I/opt/lib/perl5/5.00502/sun4-solaris/CORE   -O \
   -DVERSION=\"2.10\" \
-DXS_VERSION=\"2.10\" -I/opt/lib/perl5/5.00502/sun4-solaris/CORE perlmain.c
cat
/export/home/shapi003/sybperl-2.10/blib/arch/auto/Sybase/CTlib/extralibs.ld
 >> blib/arch/auto/Sybase/extralibs.all
cat
/export/home/shapi003/sybperl-2.10/blib/arch/auto/Sybase/DBlib/extralibs.ld
 >> blib/arch/auto/Sybase/extralibs.all
cat /opt/lib/perl5/5.00502/sun4-solaris/auto/DynaLoader/extralibs.ld >>
blib/arch/auto/Sybase/extralibs.all
gcc -o perl -O ./perlmain.o
/opt/lib/perl5/5.00502/sun4-solaris/auto/DynaLoader/DynaLoader.a
/export/home/shapi003/sybperl-2.10/bl
ib/arch/auto/Sybase/DBlib/DBlib.a
/export/home/shapi003/sybperl-2.10/blib/arch/auto/Sybase/CTlib/CTlib.a
/opt/lib/perl5/5.00502/sun
4-solaris/CORE/libperl.a `cat blib/arch/auto/Sybase/extralibs.all` -lsocket
 -lnsl -ldl -lm -lc -lcrypt
To install the new "perl" binary, call
    make -f Makefile.aperl inst_perl MAP_TARGET=perl
To remove the intermediate files say
    make -f Makefile.aperl map_clean
PERL_DL_NONLAZY=1 ./../perl -I../blib/arch -I../blib/lib
-I/opt/lib/perl5/5.00502/sun4-solaris -I/opt/lib/perl5/5.00502 -e 'use Test
::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
t/bcp...............ok
All tests successful.
Files=1,  Tests=9,  1 wallclock secs ( 0.15 cusr +  0.04 csys =  0.19 CPU)
PERL_DL_NONLAZY=1 ./../perl -I../blib/arch -I../blib/lib
-I/opt/lib/perl5/5.00502/sun4-solaris -I/opt/lib/perl5/5.00502 -e 'use Test
::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
t/ctlib.............ok
t/cursor............ok
All tests successful.
Files=2,  Tests=52,  1 wallclock secs ( 0.44 cusr +  0.13 csys =  0.57 CPU)
PERL_DL_NONLAZY=1 ./../perl -I../blib/arch -I../blib/lib
-I/opt/lib/perl5/5.00502/sun4-solaris -I/opt/lib/perl5/5.00502 -e 'use Test
::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
t/dblib.............Can't call method "dbsqlok" on an undefined value at
t/dblib.t line 132.
dubious
        Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 20-22
        Failed 3/22 tests, 86.36% okay
t/money.............ok
Failed Test  Status Wstat Total Fail  Failed  List of failed
---------------------------------------------------------------------------
----
t/dblib.t       255 65280    22    3  13.64%  20-22
Failed 1/2 test scripts, 50.00% okay. 3/35 subtests failed, 91.43% okay.
*** Error code 29
make: Fatal error: Command failed for target `test_static'
Current working directory /export/home/shapi003/sybperl-2.10/DBlib
*** Error code 1
make: Fatal error: Command failed for target `test'

I am not sure what dbsqlok is.  I looked in t/dblib.t at line 132 and saw
the following:

($x->dbsqlok == SUCCEED)
    and print "ok 22\n"                       <------ line 132
    or print "not ok 22\n";

Has anybody seen this and know what the fix is?  I would appreciate some
help.

Thanks,

David