Skip to Content.
Sympa Menu

freetds - [freetds] Problems with freetds DBD::Sybase (HP-UX 11.11, 64bit)

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: Stephan Austermühle <au AT hcsd.de>
  • To: freetds AT lists.ibiblio.org
  • Subject: [freetds] Problems with freetds DBD::Sybase (HP-UX 11.11, 64bit)
  • Date: Wed, 11 Jul 2007 14:27:31 +0200 (CEST)

Hi,

I am in the unhappy situation that I need to request data from an MS SQL
server with a Perl script running on HP-UX 11i. The Perl (5.8.8) that I
use is compiled as a 64bit binary and basically works very well.

To get the desired data from the MS SQL server I have compiled FreeTDS
0.64 first without problems. Connecting to the database with tsql shows
the wanted results.

Next, I tried to compile DBD::Sybase (1.08). First, the compiler stops at
line 111 in file dbdimp.c complaining about 'Unexpected symbol:
"context_alloc_mutex".'. I have fixed this temporarily by adding

typedef pthread_mutex_t perl_mutex;

and including pthreads.h.

Next, I had to add the OpenSSL libraries ("-lssl -lcrypto") to LDLOADLIBS
in the Makefile. Compilation now finishs successfully but "make test"
fails every test with

Can't make loaded symbols global on this platform while loading
[...]/src/DBD-Sybase-1.08/blib/arch/auto/DBD/Sybase/Sybase.sl

Ignoring this problem and installing the module anyway doesn't help.
Whenever I try to use DBD::Sybase I'll get the above error message and my
Perl script aborts:

use strict;
use DBI;

my $user = 'XXXX';
my $passwd = 'XXXX';
my $dbh = DBI->connect("dbi:Sybase:database=XXXX", $user, $passwd);

stops withs

Can't make loaded symbols global on this platform while loading
[...]/lib/site_perl/5.8.8/PA-RISC2.0-LP64/auto/DBD/Sybase/Sybase.sl at
[...]/lib/5.8.8/PA-RISC2.0-LP64/DynaLoader.pm line 230.
DBI connect('database=XXXX','XXXX',...) failed: (no error string) at
./sybtest line 10

The FreeTDS debug log says:

14:25:07.424492 26826 (util.c:288):Starting log file for FreeTDS 0.64
on 2007-07-11 14:25:07 with debug flags 0xffff.
14:25:07.465934 26826 (iconv.c:195):names for ISO-8859-1: iso81
14:25:07.465998 26826 (iconv.c:195):names for UTF-8: utf8
14:25:07.466035 26826 (iconv.c:195):names for UCS-2LE: (null)
14:25:07.466072 26826 (iconv.c:195):names for UCS-2BE: ucs2
14:25:07.466109 26826 (iconv.c:361):iconv to convert client-side data to
the "ISO-8859-1" character set
14:25:07.467501 26826 (iconv.c:514):tds_iconv_info_init: converting
"ISO-8859-1"->"UCS-2LE"
14:25:07.467565 26826 (login.c:209):IP address pointer is empty
14:25:07.467602 26826 (login.c:211):Server SYBASE not found!
14:25:07.467641 26826 (mem.c:519):tds_free_all_results()
14:25:07.467756 26826 (ct.c:587):leaving ct_connect() returning 0
14:25:07.467837 26826 (ct.c:1834):ct_con_drop()

I get this error message with DBD::Sybase only. Other modules like
DBD::mysql or NetSNMP work without trouble.

Do you have a hint for me on how I can get DBD::Sybase running?

Thanks a lot for your help!

Kind regards,

Stephan




Archive powered by MHonArc 2.6.24.

Top of Page