Webber, Scott wrote:
I'm having trouble building the DBD-ODBC driver on our HPUX server.
Below is the log of me running:

make realclean
perl Makefile.PL
make

Note:  unixODBC is version 2.2.12 that I just built today. I have
successfully created a connection with isql.


/home/x703299/downloads/extracted/DBD-ODBC-1.13 >make realclean
        rm -rf ODBC.c ODBC.xsi dbdodbc.h ./blib Makefile.aperl
blib/arch/auto/DBD/ODBC/extralibs.all
blib/arch/auto/DBD/ODBC/extralibs.ld perlmain.c tmon.out mon.out
so_locations pm_to_blib *.o *.a perl.exe perl perl ODBC.bs ODBC.bso
ODBC.def libODBC.def ODBC.exp ODBC.x core core.*perl.*.? *perl.core
core.[0-9] core.[0-9][0-9] core.[0-9][0-9][0-9]
core.[0-9][0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9][0-9]
        mv Makefile Makefile.old > /dev/null 2>&1
        rm -rf blib/lib/auto/DBD/ODBC blib/arch/auto/DBD/ODBC
        rm -rf DBD-ODBC-1.13
        rm -f blib/arch/auto/DBD/ODBC/ODBC.sl
blib/arch/auto/DBD/ODBC/ODBC.bs
        rm -f blib/arch/auto/DBD/ODBC/ODBC.a
        rm -f  blib/lib/DBD/ODBC.pm Makefile.old Makefile
/home/x703299/downloads/extracted/DBD-ODBC-1.13
ODBCHOME=/home/x703299/unixODBC perl Makefile.PL
Useless use of private variable in void context at Makefile.PL line 431.

Configuring DBD::ODBC ...

    Remember to actually *READ* the README file!
        And re-read it if you have any problems.

Using DBI 1.50 (for perl 5.008007 on PA-RISC2.0-LP64) installed in
/opt/perl587/lib/site_perl/5.8.7/PA-RISC2.0-LP64/auto/DBI/
Using ODBC in /home/x703299/unixODBC

Umm, this looks like a unixodbc type of driver manager.
We expect to find the sql.h, sqlext.h and (which were
supplied with unixODBC) in $ODBCHOME/include directory alongside
the /home/x703299/unixODBC/lib/libodbc.sl library. in $ODBCHOME/lib

Warning: LD_LIBRARY_PATH doesn't include /home/x703299/unixODBC

Checking if your kit is complete...
Looks good
Injecting selected odbc driver into cc command
Injecting selected odbc driver into cc command
Using DBI 1.50 (for perl 5.008007 on PA-RISC2.0-LP64) installed in
/opt/perl587/lib/site_perl/5.8.7/PA-RISC2.0-LP64/auto/DBI/
Writing Makefile for DBD::ODBC

The DBD::ODBC tests will use these values for the database connection:
    DBI_DSN=            e.g. dbi:ODBC:demo
    DBI_USER=
    DBI_PASS=
Warning: not all required environment variables are set.

/home/x703299/downloads/extracted/DBD-ODBC-1.13 >make
        cp Changes blib/lib/DBD/ODBC/Changes.pm
cp ODBC.pm blib/lib/DBD/ODBC.pm
        /usr/bin/perl -p -e "s/~DRIVER~/ODBC/g"
/opt/perl587/lib/site_perl/5.8.7/PA-RISC2.0-LP64/auto/DBI//Driver.xst >
ODBC.xsi
        /usr/bin/perl /opt/perl587/lib/5.8.7/ExtUtils/xsubpp  -typemap
/opt/perl587/lib/5.8.7/ExtUtils/typemap  ODBC.xs > ODBC.xsc && mv
ODBC.xsc ODBC.c
Warning: duplicate function definition 'data_sources' detected in
ODBC.xs, line 202
        cc -c -I/home/x703299/unixODBC/include  -I.
-I/opt/perl587/lib/site_perl/5.8.7/PA-RISC2.0-LP64/auto/DBI/  -Ae
-D_HPUX_SOURCE -Wl,+vnocompatwarnings +DD64 +z -I/usr/local/include
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 +O2 +Onolimit
-DVERSION=\"1.13\"  -DXS_VERSION=\"1.13\" +Z
"-I/opt/perl587/lib/5.8.7/PA-RISC2.0-LP64/CORE"
-I/home/x703299/unixODBC/include ODBC.c

<snipped compiler warnings>

Running Mkbootstrap for DBD::ODBC ()
        chmod 644 ODBC.bs
        rm -f blib/arch/auto/DBD/ODBC/ODBC.sl
        LD_RUN_PATH="/home/x703299/unixODBC/lib" /usr/bin/ld  -b
+vnocompatwarnings -L/usr/local/lib -L/lib/pa20_64 ODBC.o  dbdimp.o  -o
blib/arch/auto/DBD/ODBC/ODBC.sl   -L/home/x703299/unixODBC/lib -lodbc
ld: Mismatched ABI (not an ELF file) for -lodbc
Fatal error.
*** Error exit code 1

Stop.
/home/x703299/downloads/extracted/DBD-ODBC-1.13 >

What does file /home/x703299/unixODBC/lib/libodbc.sl return?

I think you are compiling DBD::ODBC 64 bit and you have compiled unixODBC 32 bit.

Martin
--
Martin J. Evans
Easysoft Limited
http://www.easysoft.com

Reply via email to