Error building DBD-ODBC on HPUX

Error building DBD-ODBC on HPUX

am 25.06.2007 23:41:43 von Scott.Webber

I'm having trouble building the DBD-ODBC driver on our HPUX server. Be=
low 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. =0D=
=0A/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/ext ralibs.ld perlm=
ain.c tmon.out mon.out so=5Flocations pm=5Fto=5Fblib *.o *.a perl.exe =
perl perl ODBC.bs ODBC.bso ODBC.def libODBC.def ODBC.exp ODBC.x core c=
ore.*perl.*.=3F *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=0D=
=0A rm -f blib/arch/auto/DBD/ODBC/ODBC.sl blib/arch/auto/DBD/OD=
BC/ODBC.bs rm -f blib/arch/auto/DBD/ODBC/ODBC.a r=
m -f blib/lib/DBD/ODBC.pm Makefile.old Makefile /home/x703299/downloa=
ds/extracted/DBD-ODBC-1.13 >ODBCHOME=3D/home/x703299/un ixODBC perl Mak=
efile.PL Useless use of private variable in void context at Makefile.P=
L line 431. Configuring DBD::ODBC ... >>> Remembe=
r to actually *READ* the README file! And re-read it if you ha=
ve any problems. Using DBI 1.50 (for perl 5.008007 on PA-RISC2.0=
-LP64) installed in /opt/perl587/lib/site=5Fperl/5.8.7/PA-RISC2.0-LP64=
/auto/DBI/ Using ODBC in /home/x703299/unixODBC Umm, this l=
ooks like a unixodbc type of driver manager. We expect to find the sql=
h, sqlext.h and (which were supplied with unixODBC) in $ODBCHOME/in=
clude directory alongside the /home/x703299/unixODBC/lib/libodbc.sl li=
brary. in $ODBCHOME/lib Warning: LD=5FLIBRARY=5FPATH doesn't inc=
lude /home/x703299/unixODBC Checking if your kit is complete...=0D=
=0ALooks good Injecting selected odbc driver into cc command Inje=
cting 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=5Fperl/5=
8.7/PA-RISC2.0-LP64/auto/DBI/ Writing Makefile for DBD::ODBC =0D=
=0AThe DBD::ODBC tests will use these values for the database connection:=0D=
=0A DBI=5FDSN=3D e.g. dbi:ODBC:demo DBI=5FUSER= =
=0A DBI=5FPASS= =0AWarning: not all required environment variables a=
re set. /home/x703299/downloads/extracted/DBD-ODBC-1 .13 >make=0D=
=0A 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=5Fperl/5.8.7/PA-RISC2.0-LP64/auto/DBI//Dri ver.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 'dat=
a=5Fsources' detected in ODBC.xs, line 202 cc -c -I/home/=
x703299/unixODBC/include -I. -I/opt/perl587/lib/site=5Fperl/5.8.7/PA-=
RISC2.0-LP64/auto/DBI/ -Ae -D=5FHPUX=5FSOURCE -Wl,+vnocompatwarnings =
+DD64 +z -I/usr/local/include -D=5FLARGEFILE=5FSOURCE -D=5FFILE=5FOFFS=
ET=5FBITS=3D64 +O2 +Onolimit -DVERSION=3D\"1.13\" -DXS=5FVERSION=3D\"=
1.13\" +Z "-I/opt/perl587/lib/5.8.7/PA-RISC2.0-LP64/CORE"=0D=0 A-I/home=
/x703299/unixODBC/include ODBC.c cpp: "dbdimp.h", line 41: warning 202=
8: Found comment inside comment started on line 40. cpp: "dbdimp.=
h", line 42: warning 2028: Found comment inside comment started on lin=
e 40. cpp: "dbdimp.h", line 90: warning 2028: Found comment inside com=
ment started on line 89. cpp: "dbdimp.h", line 91: warning 2028: =
Found comment inside comment started on line 89. cc: "ODBC.xs", l=
ine 231: warning 604: Pointers are not assignment-compatible. cc:=
"ODBC.xs", line 231: warning 563: Argument #1 is not the correct type=
. =0Acc: "ODBC.xs", line 251: warning 604: Pointers are not assign=
ment-compatible. cc: "ODBC.xs", line 251: warning 563: Argument #1 is =
not the correct type. cc -c -I/home/x703299/unixODBC/incl=
ude -I. -I/opt/perl587/lib/site=5Fperl/5.8.7/PA-RISC2.0-LP6 4/auto/DBI=
/ -Ae -D=5FHPUX=5FSOURCE -Wl,+vnocompatwarnings +DD64 +z -I/usr/local=
/include -D=5FLARGEFILE=5FSOURCE -D=5FFILE=5FOFFSET=5FBITS=3D64 +O2 +O=
nolimit -DVERSION=3D\"1.13\" -DXS=5FVERSION=3D\"1.13\" +Z "-I/op=
t/perl587/lib/5.8.7/PA-RISC2.0-LP64/CORE" -I/home/x7032 99/unixODBC/inc=
lude dbdimp.c cpp: "dbdimp.h", line 41: warning 2028: Found comment in=
side comment started on line 40. cpp: "dbdimp.h", line 42: warnin=
g 2028: Found comment inside comment started on line 40. cpp: "db=
dimp.h", line 90: warning 2028: Found comment inside comment started o=
n line 89. cpp: "dbdimp.h", line 91: warning 2028: Found comment insid=
e comment started on line 89. cpp: "dbdimp.c", line 2909: warning=
2028: Found comment inside comment started on line 2909. cc: "db=
dimp.c", line 587: warning 604: Pointers are not assignment-compatible=
. =0Acc: "dbdimp.c", line 587: warning 563: Argument #3 is not the corr=
ect type. cc: "dbdimp.c", line 587: warning 604: Pointers are not=0D=
=0Aassignment-compatible. cc: "dbdimp.c", line 587: warning 563: Argum=
ent #5 is not the correct type. cc: "dbdimp.c", line 654: warning=
604: Pointers are not assignment-compatible. cc: "dbdimp.c", lin=
e 654: warning 563: Argument #2 is not the correct type. cc: "dbd=
imp.c", line 654: warning 604: Pointers are not assignment-compatible.=0D=
=0Acc: "dbdimp.c", line 654: warning 563: Argument #4 is not the correct=0D=
=0Atype. cc: "dbdimp.c", line 654: warning 604: Pointers are not =
assignment-compatible. cc: "dbdimp.c", line 654: warning 563: Argument=
#6 is not the correct type. cc: "dbdimp.c", line 961: warning 60=
4: Pointers are not assignment-compatible. cc: "dbdimp.c", line 9=
61: warning 563: Argument #2 is not the correct type. cc: "dbdimp=
c", line 987: warning 604: Pointers are not assignment-compatible.=0D=
=0Acc: "dbdimp.c", line 987: warning 563: Argument #1 is not the correct=0D=
=0Atype. cc: "dbdimp.c", line 988: warning 604: Pointers are not =
assignment-compatible. cc: "dbdimp.c", line 988: warning 563: Argument=
#1 is not the correct type. cc: "dbdimp.c", line 1010: warning 6=
04: Pointers are not assignment-compatible. cc: "dbdimp.c", line =
1010: warning 563: Argument #2 is not the correct type. cc: "dbdi=
mp.c", line 1012: warning 604: Pointers are not assignment-compatible.=0D=
=0Acc: "dbdimp.c", line 1012: warning 563: Argument #2 is not the correct=0D=
=0Atype. cc: "dbdimp.c", line 1014: warning 604: Pointers are not =
assignment-compatible. cc: "dbdimp.c", line 1014: warning 563: Argumen=
t #2 is not the correct type. cc: "dbdimp.c", line 1020: warning =
604: Pointers are not assignment-compatible. cc: "dbdimp.c", line=
1020: warning 563: Argument #1 is not the correct type. cc: "dbd=
imp.c", line 1309: warning 604: Pointers are not assignment-compatible=
. =0Acc: "dbdimp.c", line 1309: warning 563: Argument #2 is not the cor=
rect type. cc: "dbdimp.c", line 1309: warning 604: Pointers are n=
ot assignment-compatible. cc: "dbdimp.c", line 1309: warning 563:=
Argument #4 is not the correct type. cc: "dbdimp.c", line 1309: =
warning 604: Pointers are not assignment-compatible. cc: "dbdimp.=
c", line 1309: warning 563: Argument #6 is not the correct type. =
cc: "dbdimp.c", line 1309: warning 604: Pointers are not assignment-co=
mpatible. cc: "dbdimp.c", line 1309: warning 563: Argument #8 is not t=
he correct type. cc: "dbdimp.c", line 1371: warning 604: Pointers=
are not assignment-compatible. cc: "dbdimp.c", line 1371: warnin=
g 563: Argument #2 is not the correct type. cc: "dbdimp.c", line =
1371: warning 604: Pointers are not assignment-compatible. cc: "d=
bdimp.c", line 1371: warning 563: Argument #4 is not the correct type.=0D=
=0Acc: "dbdimp.c", line 1371: warning 604: Pointers are not assignment=
-compatible. cc: "dbdimp.c", line 1371: warning 563: Argument #6 is no=
t the correct type. cc: "dbdimp.c", line 1453: warning 604: Point=
ers are not assignment-compatible. cc: "dbdimp.c", line 1453: war=
ning 563: Argument #2 is not the correct type. cc: "dbdimp.c", li=
ne 2015: warning 604: Pointers are not assignment-compatible. cc:=
"dbdimp.c", line 2015: warning 563: Argument #2 is not the correct ty=
pe. cc: "dbdimp.c", line 2061: warning 604: Pointers are not assi=
gnment-compatible. cc: "dbdimp.c", line 2762: warning 604: Pointers ar=
e not assignment-compatible. cc: "dbdimp.c", line 2772: warning 6=
04: Pointers are not assignment-compatible. cc: "dbdimp.c", line =
3108: warning 727: Cast truncates pointer into 32 bit integer. cc=
: "dbdimp.c", line 3579: warning 604: Pointers are not assignment-comp=
atible. cc: "dbdimp.c", line 3579: warning 563: Argument #1 is not the=
correct type. cc: "dbdimp.c", line 3621: warning 604: Pointers a=
re not assignment-compatible. cc: "dbdimp.c", line 3621: warning =
563: Argument #2 is not the correct type. cc: "dbdimp.c", line 38=
20: warning 604: Pointers are not assignment-compatible. cc: "dbd=
imp.c", line 3820: warning 563: Argument #2 is not the correct type.=0D=
=0Acc: "dbdimp.c", line 3820: warning 604: Pointers are not assignment=
-compatible. cc: "dbdimp.c", line 3820: warning 563: Argument #4 is no=
t the correct type. cc: "dbdimp.c", line 3820: warning 604: Point=
ers are not assignment-compatible. cc: "dbdimp.c", line 3820: war=
ning 563: Argument #6 is not the correct type. cc: "dbdimp.c", li=
ne 3861: warning 604: Pointers are not assignment-compatible. cc:=
"dbdimp.c", line 3861: warning 563: Argument #2 is not the correct ty=
pe. cc: "dbdimp.c", line 3861: warning 604: Pointers are not assi=
gnment-compatible. cc: "dbdimp.c", line 3861: warning 563: Argument #4=
is not the correct type. cc: "dbdimp.c", line 3861: warning 604:=
Pointers are not assignment-compatible. cc: "dbdimp.c", line 386=
1: warning 563: Argument #6 is not the correct type. cc: "dbdimp.=
c", line 3906: warning 604: Pointers are not assignment-compatible.=0D=
=0Acc: "dbdimp.c", line 3906: warning 563: Argument #3 is not the correct=0D=
=0Atype. cc: "dbdimp.c", line 3906: warning 604: Pointers are not =
assignment-compatible. cc: "dbdimp.c", line 3906: warning 563: Argumen=
t #5 is not the correct type. cc: "dbdimp.c", line 3906: warning =
604: Pointers are not assignment-compatible. cc: "dbdimp.c", line=
3906: warning 563: Argument #7 is not the correct type. cc: "dbd=
imp.c", line 3968: warning 604: Pointers are not assignment-compatible=
. =0Acc: "dbdimp.c", line 3968: warning 563: Argument #2 is not the cor=
rect type. cc: "dbdimp.c", line 3968: warning 604: Pointers are n=
ot assignment-compatible. cc: "dbdimp.c", line 3968: warning 563:=
Argument #4 is not the correct type. cc: "dbdimp.c", line 3968: =
warning 604: Pointers are not assignment-compatible. cc: "dbdimp.=
c", line 3968: warning 563: Argument #6 is not the correct type. =
cc: "dbdimp.c", line 3968: warning 604: Pointers are not assignment-co=
mpatible. cc: "dbdimp.c", line 3968: warning 563: Argument #8 is not t=
he correct type. cc: "dbdimp.c", line 3968: warning 604: Pointers=
are not assignment-compatible. cc: "dbdimp.c", line 3968: warnin=
g 563: Argument #10 is not the correct type. cc: "dbdimp.c", line=
3968: warning 604: Pointers are not assignment-compatible. cc: "=
dbdimp.c", line 3968: warning 563: Argument #12 is not the correct typ=
e. cc: "dbdimp.c", line 3998: warning 604: Pointers are not assig=
nment-compatible. cc: "dbdimp.c", line 3998: warning 563: Argument #3 =
is not the correct type. cc: "dbdimp.c", line 4204: warning 604: =
Pointers are not assignment-compatible. cc: "dbdimp.c", line 4204=
: warning 563: Argument #2 is not the correct type. cc: "dbdimp.c=
", line 4204: warning 604: Pointers are not assignment-compatible. =
cc: "dbdimp.c", line 4204: warning 563: Argument #4 is not the correct =
type. cc: "dbdimp.c", line 4204: warning 604: Pointers are not as=
signment-compatible. cc: "dbdimp.c", line 4204: warning 563: Argument =
#6 is not the correct type. cc: "dbdimp.c", line 4204: warning 60=
4: Pointers are not assignment-compatible. cc: "dbdimp.c", line 4=
204: warning 563: Argument #8 is not the correct type. Running Mk=
bootstrap for DBD::ODBC () chmod 644 ODBC.bs rm -=
f blib/arch/auto/DBD/ODBC/ODBC.sl LD=5FRUN=5FPATH=3D"/home/x70=
3299/unixODBC/lib" /usr/bin/ld -b +vnocompatwarnings -L/usr/local/lib=
-L/lib/pa20=5F64 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 St=
op. /home/x703299/downloads/extracted/DBD-ODBC-1.13 > =5F =5F =5F=
=5F =5F =5F =5F =5F =5F =5F =5F =5F =5F =5F =5F =5F =5F =5F =5F =5F =5F =5F=
=5F =5F =5F =5F =5F =5F =5F =5F =5F =5F =5F =5F =5F =5F =5F _ =0A=
EMAIL CONFIDENTIALITY NOTICE =0AThis Email message, and any atta=
chments, may contain confidential =0Apatient health information that i=
s legally protected. This information =0Ais intended only for the use =
of the individual or entity named above. =0AThe authorized recipient o=
f this information is prohibited from disclosing =0Athis information t=
o any other party unless required to do so by law =0Aor regulation and=
is required to destroy the information after its stated =0Aneed has b=
een fulfilled. If you are not the intended recipient, you are =0Ahereb=
y notified that any disclosure, copying, distribution, or action =0Ata=
ken in reliance on the contents of this message is strictly prohibited. =
=0AIf you have received this information in error, please notify =
=0Athe sender immediately by replying to this message and delete the =0A=
message from your system.

Re: Error building DBD-ODBC on HPUX

am 26.06.2007 12:31:52 von Martin.Evans

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//D river.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



> 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