Message from discussion
Help please with DBD::ODBC on SUSE-Linux
Received: by 10.66.90.36 with SMTP id bt4mr3097815pab.5.1348915502729;
Sat, 29 Sep 2012 03:45:02 -0700 (PDT)
Newsgroups: perl.dbi.users
Path: t10ni23592575pbh.0!nntp.google.com!npeer02.iad.highwinds-media.com!news.highwinds-media.com!feed-me.highwinds-media.com!news.glorb.com!news.snarked.org!nntp.develooper.com!nntp.perl.org
Return-Path: <martin.ev...@easysoft.com>
Mailing-List: contact dbi-users-h...@perl.org; run by ezmlm
Delivered-To: mailing list dbi-us...@perl.org
Received: (qmail 11405 invoked from network); 29 Sep 2012 10:34:55 -0000
Received: from x1.develooper.com (207.171.7.70)
by x6.develooper.com with SMTP; 29 Sep 2012 10:34:55 -0000
Received: (qmail 8180 invoked by uid 225); 29 Sep 2012 10:34:55 -0000
Delivered-To: dbi-us...@perl.org
Received: (qmail 8175 invoked by alias); 29 Sep 2012 10:34:54 -0000
X-Spam-Status: No, hits=-1.9 required=8.0
tests=BAYES_00,HTML_MESSAGE,SPF_HELO_PASS,SPF_PASS,T_RP_MATCHES_RCVD
X-Spam-Check-By: la.mx.develooper.com
Received: from aud.easysoft.com (HELO aud.easysoft.com) (89.238.155.33)
by la.mx.develooper.com (qpsmtpd/0.28) with ESMTP; Sat, 29 Sep 2012 03:34:47 -0700
Received: from localhost (localhost [127.0.0.1])
by aud.easysoft.com (Postfix) with ESMTP id 05FFD1AC919A;
Sat, 29 Sep 2012 11:34:42 +0100 (BST)
X-Virus-Scanned: amavisd-new at aud.easysoft.com
Received: from aud.easysoft.com ([127.0.0.1])
by localhost (aud.easysoft.com [127.0.0.1]) (amavisd-new, port 10024)
with ESMTP id 9eGQBdwWEhyL; Sat, 29 Sep 2012 11:34:40 +0100 (BST)
Received: from [192.168.5.21] (cpc11-seac19-2-0-cust128.7-2.cable.virginmedia.com [82.4.97.129])
by aud.easysoft.com (Postfix) with ESMTPSA id 644221AC0498;
Sat, 29 Sep 2012 11:34:40 +0100 (BST)
Message-ID: <5066CEBF.6060903@easysoft.com>
Date: Sat, 29 Sep 2012 11:34:39 +0100
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120907 Thunderbird/15.0.1
MIME-Version: 1.0
To: Jeff Tate <jt...@mindspring.com>
CC: dbi-us...@perl.org
Subject: Re: Help please with DBD::ODBC on SUSE-Linux
References: <006e01cd7a47$60ca4db0$225ee9...@mindspring.com> <502B587C.3090...@easysoft.com> <005e01cd7af2$d9cb8340$8d6289...@mindspring.com> <502BB734.3070...@easysoft.com> <000b01cd7b0a$f512ecc0$df38c6...@mindspring.com> <502BDD65.6000...@easysoft.com> <001101cd9dcc$418bc2a0$c4a347...@mindspring.com>
In-Reply-To: <001101cd9dcc$418bc2a0$c4a347...@mindspring.com>
X-Virus-Checked: Checked
Approved: n...@nntp.perl.org
From: martin.ev...@easysoft.com ("Martin J. Evans")
X-Received-Bytes: 5369
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
On 28/09/2012 23:54, Jeff Tate wrote:
>
> I have got back to the task. I have installed an openSUSE virtual
> machine (matches the production server) and then installed Teradata
> GSS, ICU, CLIV2 and ODBC -packages. I have verified that the drivers
> function by installing the Teradata navigator and successfully getting
> data over ODBC.
>
> This time, when I run cpan test DBD::ODBC, I get an undefined symbol
> error (SQLFetch) from dynaloader trying to load ODBC.so. I have
> attached the full build and test trace from the cpan session.
>
> Thanx for any help.
>
> ------------------------------------------------------------------------
>
> From: Martin J. Evans [mailto:martin.ev...@easysoft.com]
> Sent: Wednesday, August 15, 2012 1:33 PM
> To: dbi-us...@perl.org
> Subject: Re: Help please with DBD::ODBC on SUSE-Linux
>
> On 15/08/2012 18:25, Jeff Tate wrote:
>
> >
>
> > Step 1) added ODBC trace information to odbcinst.ini (made my own
>
> > copy (system file)) and change $ODBCINST to address
>
> >
>
> > NO output produced in trace file
>
> >
>
> >
>
> That suggests you are NOT using unixODBC as the ODBC driver manager.
>
> Therefore this increases the places where the problem may be as I've
> not tried whatever driver manager comes with teradata.
>
> Martin
>
The make did not find unixODBC or iodbc via odbc_config or iodbc_config.
It then looked in standard places for it and finally in your "ODBCHOME
/opt/teradata/client/ODBC_64". It seemed to find iODBC libraries and
headers in ODBCHOME and built against it but there was no SQLFetch symbol.
As I said before, I've not tried DBD::ODBC against an iODBC that comes
with Teradata. However, I have had problems with missing symbols in
iODBC before. I'd install the unixODBC dev and bin packages, unset
ODBCHOME and run perl Makefile.PL -x. That should build fine then you
need to add your driver to the /etc/odbcinst.ini and put a DSN in the
/etc/odbc.ini.
Unfortunately I cannot be of much help as to what settings teradata
needs in the DSN. Basically, you need to find your teradata ODBC driver
shared object and add to your odbcinst.ini file something like:
[ODBC]
Trace=yes
TraceFile=/tmp/unixodbc.log
[teradata]
Description = Teradata ODBC driver
Driver = /path/to/teradata/odbc/driver/shared_object.so
Your /etc/odbc.ini should look something like:
[my_teradata_dsn]
Driver = teradata
some_attribute = some_value
another_attribute = another_value
Then you should use
isql -v my_teradata_dsn username password
Once that works build DBD::ODBC setting DBI_DSN=dbi:ODBC:my_terdata_dsn,
DBI_USER=username, DBI_PASS=password and run a make test.
Martin