http://qs321.pair.com?node_id=649804


in reply to Re: DBD::Sybase with Sybase 15.0
in thread DBD::Sybase with Sybase 15.0

This still isn't working. Here is what I did: 0) The libraries for 15.0 changed names:
c:\DBD-Sybase-1.08>ls %SYBASE%\OCS-15_0\lib libsybblk.lib libsybcs.lib libsybct.lib libsybdb.lib c:\DBD-Sybase-1.08>ls %SYBASE%\OCS-15_0\lib3p defaultmem.dll libplc21.dll nsldapssl32v40.dll libnspr21.dll libplds21.dll sbgse2.dll c:\DBD-Sybase-1.08>ls %SYBASE%\OCS-15_0\dll debug libsybdb.dll libsybintl.dll libsybtcl.dll libsybblk.dll libsybddce.dll libsybsdce.dll libsybunic.dll libsybcomn.dll libsybdldap.dll libsybskrb.dll nondebug libsybcs.dll libsybdreg.dll libsybsmssp.dll libsybct.dll libsybfssl.dll libsybsrv.dll
1) Modified Makefile.PL to remove the references to the libraries that do not exist:
if($^O eq 'MSWin32') { # $lib_string = "-L$SYBASE/lib -llibct.lib -llibcs.lib -llibtcl.lib + -llibcomn.lib -llibintl.lib -llibblk.lib $attr{EXTRA_LIBS} -lm"; $lib_string = "-L$SYBASE/lib -llibsybct.lib -llibsybcs.lib $attr{E +XTRA_LIBS}";
Note that some of the previous libraries are now dll's. 2) Run perl Makefile.PL
Multiple copies of Driver.xst found in: C:/Perl/site/lib/auto/DBI/ C:/ +Perl/lib/auto/DBI/ at Makefile.PL line 64 Using DBI 1.57 (for perl 5.008008 on MSWin32-x86-multi-thread) install +ed in C:/Perl/site/lib/auto/DBI/ Writing Makefile for DBD::Sybase
3) Now run nmake: This is just the last bit....
dbdimp.c(5634) : warning C4996: 'strtok' was declared deprecated C:\msvs8\VC\INCLUDE\string.h(164) : see declaration of 'strtok' Message: 'This function or variable may be unsafe. Consider us +ing strtok _s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See +online hel p for details.' dbdimp.c(5637) : warning C4996: 'strncpy' was declared deprecated C:\msvs8\VC\INCLUDE\string.h(156) : see declaration of 'strncp +y' Message: 'This function or variable may be unsafe. Consider us +ing strncp y_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See + online he lp for details.' Running Mkbootstrap for DBD::Sybase () C:\Perl\bin\perl.exe -MExtUtils::Command -e chmod 644 Sybase.b +s link -out:blib\arch\auto\DBD\Sybase\Sybase.dll -LC:\sybase70/O +CS-15_0/li b -dll -nologo -nodefaultlib -debug -opt:ref,icf -libpath:"C:\Perl\li +b\CORE" - machine:x86 Sybase.obj dbdimp.obj C:\Perl\lib\CORE\perl58.lib C:\sy +base70\OCS -15_0\lib\libsybct.lib C:\sybase70\OCS-15_0\lib\libsybcs.lib C:\msvs8\ +VC\LIB\old names.lib C:\msvs8\VC\LIB\kernel32.lib C:\mssdk\Lib\user32.lib C:\mssd +k\Lib\gdi3 2.lib C:\mssdk\Lib\winspool.lib C:\mssdk\Lib\comdlg32.lib C:\mssdk\Lib +\advapi32. lib C:\mssdk\Lib\shell32.lib C:\mssdk\Lib\ole32.lib C:\mssdk\Lib\oleau +t32.lib C: \mssdk\Lib\netapi32.lib C:\mssdk\Lib\uuid.lib C:\mssdk\Lib\ws2_32.lib +C:\mssdk\L ib\mpr.lib C:\mssdk\Lib\winmm.lib C:\mssdk\Lib\version.lib C:\mssdk\Li +b\odbc32.l ib C:\mssdk\Lib\odbccp32.lib C:\msvs8\VC\LIB\msvcrt.lib -def:Sybase.de +f LINK : warning LNK4044: unrecognized option '/LC:\sybase70/OCS-15_0/li +b'; ignore d Creating library blib\arch\auto\DBD\Sybase\Sybase.lib and object bl +ib\arch\au to\DBD\Sybase\Sybase.exp dbdimp.obj : error LNK2019: unresolved external symbol _blk_done@12 re +ferenced i n function _syb_blk_done dbdimp.obj : error LNK2019: unresolved external symbol _blk_rowxfer@4 +referenced in function _syb_blk_execute dbdimp.obj : error LNK2019: unresolved external symbol _blk_bind@24 re +ferenced i n function _syb_blk_execute dbdimp.obj : error LNK2019: unresolved external symbol _blk_drop@4 ref +erenced in function _blkCleanUp dbdimp.obj : error LNK2019: unresolved external symbol _blk_describe@1 +2 referenc ed in function _syb_blk_init dbdimp.obj : error LNK2019: unresolved external symbol _blk_init@16 re +ferenced i n function _syb_blk_init dbdimp.obj : error LNK2019: unresolved external symbol _blk_props@24 r +eferenced in function _syb_blk_init dbdimp.obj : error LNK2019: unresolved external symbol _blk_alloc@12 r +eferenced in function _syb_blk_init blib\arch\auto\DBD\Sybase\Sybase.dll : fatal error LNK1120: 8 unresolv +ed externa ls NMAKE : fatal error U1077: 'C:\msvs8\VC\BIN\link.EXE' : return code '0 +x460' Stop.
I have been through the archives at http://www.peppler.org/cgi-bin/searcharc.cgi. I do not find any reference to anyone compiling this for Sybase 15 on Windows. The ppd module located at http://www.peppler.org/downloads/ActiveState/ still is looking for the libraries pre-Sybase 15.0. I did comment out the set line in dbimp.c. So, I'm guessing I'm not changing the library line correctly? Is there something else I need to do? Thank you