Good news :), I tried one more thing today, which is upgrading my perl from 5.8 to 5.14 and then i tried installing DBD::Sybase.
But along with that prior installing i did 2 things -
First -
source /opt/sap/SYBASE.sh ## This make sure the required {ENV} variabl
+es are set like $SYBASE etc
Second, i read somewhere that DBD::Sybase require $PERL5LIB to be set
+-
export PERL5LIB=$SYBASE/$SYBASE_OCS/perl/sybaseperl_64r/lib/lib:$SYBAS
+E/$SYBASE_OCS/perl/sybaseperl_64r/lib/arch:$SYBASE/$SYBASE_OCS/perl/s
+ybaseperl_64r/lib
After doing the above export & source the installation was smooth, it picked automatically the 64 bit .so files, even the 'make test' passed which was not the case when i tried with perl 5.8
[root@idcbuildbox268 sybase_playground]# perl -MCPAN -e 'install DBD::
+Sybase'
Going to read '/root/.cpan/Metadata'
Database was generated on Mon, 28 Sep 2015 17:17:02 GMT
Running install for module 'DBD::Sybase'
Running make for M/ME/MEWP/DBD-Sybase-1.15.tar.gz
Checksum for /root/.cpan/sources/authors/id/M/ME/MEWP/DBD-Sybase-1.15.
+tar.gz ok
CPAN.pm: Going to build M/ME/MEWP/DBD-Sybase-1.15.tar.gz
Unknown Client Library version - assuming FreeTDS.
By default DBD::Sybase 1.05 and later use the 'CHAINED' mode (where av
+ailable)
when 'AutoCommit' is turned off. Versions 1.04 and older instead manag
+ed
the transactions explicitly with a 'BEGIN TRAN' before the first DML
statement. Using the 'CHAINED' mode is preferable as it is the way tha
+t
Sybase implements AutoCommit handling for both its ODBC and JDBC drive
+rs.
Use 'CHAINED' mode by default (Y/N) [Y]:
Running in 64bit mode - looking for '64' libraries...
Found -lsybct64 for -lsybct
Found -lsybcs64 for -lsybcs
Found -lsybtcl64 for -lsybtcl
Found -lsybcomn64 for -lsybcomn
Found -lsybintl64 for -lsybintl
Found -lsybblk64 for -lsybblk
BLK api available - found: sybblk64
The DBD::Sybase module need access to a Sybase server to run the tests
+.
To clear an entry please enter 'undef'
Sybase server to use (default: SYBASE): IDCBUILDBOX268
User ID to log in to Sybase (default: sa): sa
Password (default: undef): sybase123
Sybase database to use on IDCBUILDBOX268 (default: undef): ariba1
* Writing login information, including password, to file PWD.
Checking if your kit is complete...
Looks good
Using DBI 1.634 (for perl 5.014000 on x86_64-linux) installed in /usr/
+local/lib/perl5/site_perl/5.14.0/x86_64-linux/auto/DBI/
Writing Makefile for DBD::Sybase
Writing MYMETA.yml
cp dbd-sybase.pod blib/lib/DBD/dbd-sybase.pod
cp Sybase.pm blib/lib/DBD/Sybase.pm
/usr/local/bin/perl -p -e "s/~DRIVER~/Sybase/g" /usr/local/lib/perl5/s
+ite_perl/5.14.0/x86_64-linux/auto/DBI/Driver.xst > Sybase.xsi
/usr/local/bin/perl /usr/local/lib/perl5/5.14.0/ExtUtils/xsubpp -type
+map /usr/local/lib/perl5/5.14.0/ExtUtils/typemap Sybase.xs > Sybase.
+xsc && mv Sybase.xsc Sybase.c
cc -c -I/opt/sap/OCS-16_0/include -DSYB_LP64 -I/usr/local/lib/perl5/s
+ite_perl/5.14.0/x86_64-linux/auto/DBI -fno-strict-aliasing -pipe -fst
+ack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET
+_BITS=64 -O2 -DVERSION=\"1.15\" -DXS_VERSION=\"1.15\" -fPIC "-I/usr
+/local/lib/perl5/5.14.0/x86_64-linux/CORE" Sybase.c
cc -c -I/opt/sap/OCS-16_0/include -DSYB_LP64 -I/usr/local/lib/perl5/s
+ite_perl/5.14.0/x86_64-linux/auto/DBI -fno-strict-aliasing -pipe -fst
+ack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET
+_BITS=64 -O2 -DVERSION=\"1.15\" -DXS_VERSION=\"1.15\" -fPIC "-I/usr
+/local/lib/perl5/5.14.0/x86_64-linux/CORE" dbdimp.c
Running Mkbootstrap for DBD::Sybase ()
chmod 644 Sybase.bs
rm -f blib/arch/auto/DBD/Sybase/Sybase.so
LD_RUN_PATH="/opt/sap/OCS-16_0/lib" cc -L/opt/sap/OCS-16_0/lib -share
+d -O2 -L/usr/local/lib -fstack-protector Sybase.o dbdimp.o -o blib/a
+rch/auto/DBD/Sybase/Sybase.so \
-L/opt/sap/OCS-16_0/lib -lsybct64 -lsybcs64 -lsybtcl64 -lsybcom
+n64 -lsybintl64 -lsybblk64 -ldl -lm \
chmod 755 blib/arch/auto/DBD/Sybase/Sybase.so
cp Sybase.bs blib/arch/auto/DBD/Sybase/Sybase.bs
chmod 644 blib/arch/auto/DBD/Sybase/Sybase.bs
Manifying blib/man3/DBD::Sybase.3
MEWP/DBD-Sybase-1.15.tar.gz
/usr/bin/make -- OK
'YAML' not installed, will not store persistent state
Running make test
...
...
...
...
Result: PASS
MEWP/DBD-Sybase-1.15.tar.gz
/usr/bin/make test -- OK
Running make install
Files found in blib/arch: installing files in blib/lib into architectu
+re dependent library tree
Installing /usr/local/lib/perl5/site_perl/5.14.0/x86_64-linux/auto/DBD
+/Sybase/Sybase.so
Installing /usr/local/lib/perl5/site_perl/5.14.0/x86_64-linux/auto/DBD
+/Sybase/Sybase.bs
Installing /usr/local/lib/perl5/site_perl/5.14.0/x86_64-linux/DBD/dbd-
+sybase.pod
Installing /usr/local/lib/perl5/site_perl/5.14.0/x86_64-linux/DBD/Syba
+se.pm
Installing /usr/local/share/man/man3/DBD::Sybase.3
Appending installation info to /usr/local/lib/perl5/5.14.0/x86_64-linu
+x/perllocal.pod
MEWP/DBD-Sybase-1.15.tar.gz
/usr/bin/make install -- OK
Not sure whether this was because of Perl 5.14 upgrade or because of the PERL5LIB env variable or combination :)
Also, the linux machine on which i was trying is a VM provided to the developers, so it can be that perl was copied instead of compiling & installing. When i upgraded i compiled on the vm and installed, i guess that might also make a difference |