
Using DBD::Sybase with FreeTDS
==============================

DBD::Sybase 1.17 or later works reasonably well with FreeTDS 1.18.x,
but some capabilities are limited or not available.

Build process:
--------------

FreeTDS normally installs in /usr/local, with the libraries in 
/usr/local/lib and the include files in /usr/local/include. This
location is assumed below.

To build DBD::Sybase you need to set the SYBASE environment variable
to /usr/local. When you now run "perl Makefile.PL" you will get
warnings for a few missing libraries:
	Note (probably harmless): No library found for -lcs
	Note (probably harmless): No library found for -lsybtcl
	Note (probably harmless): No library found for -lcomn
	Note (probably harmless): No library found for -lintl
This is OK because FreeTDS doesn't package the functions in the
same libraries as Sybase.

The "make test" process will fail for a number of tests when run 
against a Sybase ASE server:

Test Summary Report
-------------------
t/main.t      (Wstat: 512 Tests: 38 Failed: 2)
  Failed tests:  33-34
  Non-zero exit status: 2
t/utf8.t      (Wstat: 1792 Tests: 11 Failed: 7)
  Failed tests:  1, 4-6, 9-11
  Non-zero exit status: 7
t/xblob.t     (Wstat: 65280 Tests: 5 Failed: 0)
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 11 tests but ran 5.
Files=13, Tests=239, 16 wallclock secs ( 0.06 usr  0.03 sys +  0.72 cusr  0.40 csys =  1.21 CPU)
Result: FAIL
Failed 3/13 test programs. 9/239 subtests failed.

Specifically, FreeTDS 1.18.x does not support "unsigned smallint", fails in handling utf8 data
when fetched from an ASE server, and fails in the ct_data_info() call used in TEXT/IMAGE handling.

I personally use FreeTDS when working on DBD::Sybase, given that my main computer is an iMac and 
there are no Sybase libraries available :-)


