Perl & Client SDK
Posted in 2005
Topics: Installation, Setup & Upgrades, Connectivity: ODBC / JDBC / .NET, Connectivity: ESQL/C, 4GL & Embedded SQL, Server Administration, Licensing & Editions, Platform-Specific Issues
Hello I have been asked by a developer to post this. He has the Client SDK and an Informix environment set up but cannot get a compile without errors. Any help is appreciated.... I did a clean compile of Perl 5.8.6 and all modules. We still get the same error. Here are the answers to your questions: * Version of Perl (5.8.6) 5.8.6 * Version of DBI (1. 48 - you said current) 1.48 * Version of DBD::Informix (2005.01 - you said current) 2005.01 * Version of CSDK or ESQL/C (e.g. 2.90.FC1 - the letters and numbers can be important) 2.81.HC2.HPUX * Version of IDS (or SE, XPS, OnLine) - though that is not going to material this time. Not sure what you are asking here, sorry. * Hardware platform (HP-UX, probably PA-RISC rather than Itanium, 32-bit or 64-bit). 64 bit PA-RISC * O/S Version. 11.11 (11.i) * Which C compiler you're using - version number\\ GCC 3.4.2 * Output of 'perl -V' XXX:/home/edi/wlsedi/perl/DBD-Informix-2005.01# perl -V Summary of my perl5 (revision 5 version 8 subversion 6) configuration: Platform: osname=hpux, osvers=11.11, archname=PA-RISC2.0 uname='hp-ux l02 b.11.11 u 9000800 135901537 unlimited-user license ' config_args='-Dcc=gcc -d' hint=recommended, useposix=true, d_sigaction=define usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef useperlio=define d_sfio=undef uselargefiles=define usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='gcc', ccflags ='-D_HPUX_SOURCE -mpa-risc-2-0 -DDEBUGGING -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64', optimize='-g -O', cppflags='-D_HPUX_SOURCE -D_HPUX_SOURCE -mpa-risc-2-0 -DDEBUGGING -fno-strict-aliasing -pipe -I/usr/local/include' ccversion='', gccversion='3.4.2', gccosandvers='hpux11.11' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=4321 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16 ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=8, prototype=define Linker and Libraries: ld='/usr/bin/ld', ldflags =' -L/usr/local/lib' libpth=/usr/local/lib /lib /usr/lib /usr/ccs/lib libs=-lnsl -lnm -lndbm -lmalloc -ldld -lm -lcrypt -lsec -lc perllibs=-lnsl -lnm -lmalloc -ldld -lm -lcrypt -lsec -lc libc=/lib/libc.sl, so=sl, useshrplib=false, libperl=libperl.a gnulibc_version='' Dynamic Linking: dlsrc=dl_hpux.xs, dlext=sl, d_dlsymun=undef, ccdlflags='-Wl,-E -Wl,-B,deferred ' cccdlflags='-fPIC', lddlflags='-b -L/usr/local/lib' Characteristics of this binary (from libperl): Compile-time options: DEBUGGING USE_LARGE_FILES Built under hpux Compiled at Apr 6 2005 12:52:28 @INC: /opt/perl5/lib/5.8.6/PA-RISC2.0 /opt/perl5/lib/5.8.6 /opt/perl5/lib/site_perl/5.8.6/PA-RISC2.0 /opt/perl5/lib/site_perl/5.8.6 /opt/perl5/lib/site_perl * Did you build this perl or is it one supplied with the o/s. New biild * Did you build this perl on this machine. Yes * Output of 'perl Makefile.PL'. Don't have that. Could re-install if necessary. * Have you built any programs with the CSDK you have installed? No, this is a new client for us. * What happened when you tried to build esqlbasic as directed in the README file? XXX:/home/edi/wlsedi/perl/perl-5.8.6# esql -o esqlbasic.ec (Bundled) cc: warning 480: The +Ofastaccess option is available only with the C/ANSI C product; ignored. ld: Unsatisfied symbol "main" in file <no file> 1 errors. I suspect the issue is with our SDK client. I am not sure where it needs to be installed. We have database connectivity on this machine via ODBC. I understand that may be an alternative. Our database servers are remote. I have conulted our DBAs and they just are not familiar with the SDK client, etc. Thanks for any help you can offer. Please let me know if you need addtional details.
tomcaml@yahoo.com wrote: > Hello > > I have been asked by a developer to post this. He has the Client SDK > and an Informix environment set up but cannot get a compile without > errors. Any help is appreciated.... > > I did a clean compile of Perl 5.8.6 and all modules. We still get the > same error. Here are the answers to your questions: > > * Version of Perl (5.8.6) > 5.8.6 > * Version of DBI (1. 48 - you said current) > 1.48 > * Version of DBD::Informix (2005.01 - you said current) > 2005.01 > * Version of CSDK or ESQL/C (e.g. 2.90.FC1 - the letters and numbers > can be important) > 2.81.HC2.HPUX > * Version of IDS (or SE, XPS, OnLine) - though that is not going to > material this time. > Not sure what you are asking here, sorry. > * Hardware platform (HP-UX, probably PA-RISC rather than Itanium, > 32-bit or 64-bit). > 64 bit PA-RISC > * O/S Version. > 11.11 (11.i) > * Which C compiler you're using - version number\\ > GCC 3.4.2 > * Output of 'perl -V' > XXX:/home/edi/wlsedi/perl/DBD-Informix-2005.01# perl -V > Summary of my perl5 (revision 5 version 8 subversion 6) configuration: > Platform: > osname=hpux, osvers=11.11, archname=PA-RISC2.0 > uname='hp-ux l02 b.11.11 u 9000800 135901537 unlimited-user license > ' > config_args='-Dcc=gcc -d' > hint=recommended, useposix=true, d_sigaction=define > usethreads=undef use5005threads=undef useithreads=undef > usemultiplicity=undef > useperlio=define d_sfio=undef uselargefiles=define usesocks=undef > use64bitint=undef use64bitall=undef uselongdouble=undef > usemymalloc=n, bincompat5005=undef > Compiler: > cc='gcc', ccflags ='-D_HPUX_SOURCE -mpa-risc-2-0 -DDEBUGGING > -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE > -D_FILE_OFFSET_BITS=64', > optimize='-g -O', > cppflags='-D_HPUX_SOURCE -D_HPUX_SOURCE -mpa-risc-2-0 -DDEBUGGING > -fno-strict-aliasing -pipe -I/usr/local/include' > ccversion='', gccversion='3.4.2', gccosandvers='hpux11.11' > intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=4321 > d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16 > ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', > lseeksize=8 > alignbytes=8, prototype=define > Linker and Libraries: > ld='/usr/bin/ld', ldflags =' -L/usr/local/lib' > libpth=/usr/local/lib /lib /usr/lib /usr/ccs/lib > libs=-lnsl -lnm -lndbm -lmalloc -ldld -lm -lcrypt -lsec -lc > perllibs=-lnsl -lnm -lmalloc -ldld -lm -lcrypt -lsec -lc > libc=/lib/libc.sl, so=sl, useshrplib=false, libperl=libperl.a > gnulibc_version='' > Dynamic Linking: > dlsrc=dl_hpux.xs, dlext=sl, d_dlsymun=undef, ccdlflags='-Wl,-E > -Wl,-B,deferred ' > cccdlflags='-fPIC', lddlflags='-b -L/usr/local/lib' > > > Characteristics of this binary (from libperl): > Compile-time options: DEBUGGING USE_LARGE_FILES > Built under hpux > Compiled at Apr 6 2005 12:52:28 > @INC: > /opt/perl5/lib/5.8.6/PA-RISC2.0 > /opt/perl5/lib/5.8.6 > /opt/perl5/lib/site_perl/5.8.6/PA-RISC2.0 > /opt/perl5/lib/site_perl/5.8.6 > /opt/perl5/lib/site_perl > * Did you build this perl or is it one supplied with the o/s. > New biild > * Did you build this perl on this machine. > Yes > * Output of 'perl Makefile.PL'. > Don't have that. Could re-install if necessary. > * Have you built any programs with the CSDK you have installed? > No, this is a new client for us. > * What happened when you tried to build esqlbasic as directed in the > README file? > XXX:/home/edi/wlsedi/perl/perl-5.8.6# esql -o esqlbasic.ec > (Bundled) cc: warning 480: The +Ofastaccess option is available only > with the C/ANSI C product; ignored. > ld: Unsatisfied symbol "main" in file <no file> > 1 errors. Either the person on whose behalf you posted this is also talking to me in the dbi-users mailing list or you just coincidentally have the exact same symptoms of the problem - down to the same idiosyncratic 2.81.HC2.HPUX version number on CSDK. When I was sent the actual output of the 'perl Makefile.PL' script, it turned out that the ESQL/C version was 2.81.FC2 - not HC2 - and the 32-bit Perl was never going to be able to use the 64-bit CSDK. My recommendation is to obtain the 32-bit 2.81.UC2 (or 2.81.HC2) version of CSDK. The alternative is to work out how to make GCC generate 64-bit code - I know how to do that for Solaris, but there isn't an obvious mechanism in the HP-UX version - even after scanning 'gcc --help-target' output. > I suspect the issue is with our SDK client. I am not sure where it > needs to be installed. We have database connectivity on this machine > via ODBC. I understand that may be an alternative. Our database > servers are remote. I have conulted our DBAs and they just are not > familiar with the SDK client, etc. > > Thanks for any help you can offer. Please let me know if you need > addtional details. > -- Jonathan Leffler #include <disclaimer.h> Email: jleffler@earthlink.net, jleffler@us.ibm.com Guardian of DBD::Informix v2005.01 -- http://dbi.perl.org/
Jonathan Leffler wrote: > tomcaml@yahoo.com wrote: > > Hello > > > > I have been asked by a developer to post this. He has the Client SDK > > and an Informix environment set up but cannot get a compile without > > errors. Any help is appreciated.... > > > > I did a clean compile of Perl 5.8.6 and all modules. We still get the > > same error. Here are the answers to your questions: > > > > * Version of Perl (5.8.6) > > 5.8.6 > > * Version of DBI (1. 48 - you said current) > > 1.48 > > * Version of DBD::Informix (2005.01 - you said current) > > 2005.01 > > * Version of CSDK or ESQL/C (e.g. 2.90.FC1 - the letters and numbers > > can be important) > > 2.81.HC2.HPUX > > * Version of IDS (or SE, XPS, OnLine) - though that is not going to > > material this time. > > Not sure what you are asking here, sorry. > > * Hardware platform (HP-UX, probably PA-RISC rather than Itanium, > > 32-bit or 64-bit). > > 64 bit PA-RISC > > * O/S Version. > > 11.11 (11.i) > > * Which C compiler you're using - version number\\ > > GCC 3.4.2 > > * Output of 'perl -V' > > XXX:/home/edi/wlsedi/perl/DBD-Informix-2005.01# perl -V > > Summary of my perl5 (revision 5 version 8 subversion 6) configuration: > > Platform: > > osname=hpux, osvers=11.11, archname=PA-RISC2.0 > > uname='hp-ux l02 b.11.11 u 9000800 135901537 unlimited-user license > > ' > > config_args='-Dcc=gcc -d' > > hint=recommended, useposix=true, d_sigaction=define > > usethreads=undef use5005threads=undef useithreads=undef > > usemultiplicity=undef > > useperlio=define d_sfio=undef uselargefiles=define usesocks=undef > > use64bitint=undef use64bitall=undef uselongdouble=undef > > usemymalloc=n, bincompat5005=undef > > Compiler: > > cc='gcc', ccflags ='-D_HPUX_SOURCE -mpa-risc-2-0 -DDEBUGGING > > -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE > > -D_FILE_OFFSET_BITS=64', > > optimize='-g -O', > > cppflags='-D_HPUX_SOURCE -D_HPUX_SOURCE -mpa-risc-2-0 -DDEBUGGING > > -fno-strict-aliasing -pipe -I/usr/local/include' > > ccversion='', gccversion='3.4.2', gccosandvers='hpux11.11' > > intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=4321 > > d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16 > > ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', > > lseeksize=8 > > alignbytes=8, prototype=define > > Linker and Libraries: > > ld='/usr/bin/ld', ldflags =' -L/usr/local/lib' > > libpth=/usr/local/lib /lib /usr/lib /usr/ccs/lib > > libs=-lnsl -lnm -lndbm -lmalloc -ldld -lm -lcrypt -lsec -lc > > perllibs=-lnsl -lnm -lmalloc -ldld -lm -lcrypt -lsec -lc > > libc=/lib/libc.sl, so=sl, useshrplib=false, libperl=libperl.a > > gnulibc_version='' > > Dynamic Linking: > > dlsrc=dl_hpux.xs, dlext=sl, d_dlsymun=undef, ccdlflags='-Wl,-E > > -Wl,-B,deferred ' > > cccdlflags='-fPIC', lddlflags='-b -L/usr/local/lib' > > > > > > Characteristics of this binary (from libperl): > > Compile-time options: DEBUGGING USE_LARGE_FILES > > Built under hpux > > Compiled at Apr 6 2005 12:52:28 > > @INC: > > /opt/perl5/lib/5.8.6/PA-RISC2.0 > > /opt/perl5/lib/5.8.6 > > /opt/perl5/lib/site_perl/5.8.6/PA-RISC2.0 > > /opt/perl5/lib/site_perl/5.8.6 > > /opt/perl5/lib/site_perl > > * Did you build this perl or is it one supplied with the o/s. > > New biild > > * Did you build this perl on this machine. > > Yes > > * Output of 'perl Makefile.PL'. > > Don't have that. Could re-install if necessary. > > * Have you built any programs with the CSDK you have installed? > > No, this is a new client for us. > > * What happened when you tried to build esqlbasic as directed in the > > README file? > > XXX:/home/edi/wlsedi/perl/perl-5.8.6# esql -o esqlbasic.ec > > (Bundled) cc: warning 480: The +Ofastaccess option is available only > > with the C/ANSI C product; ignored. > > ld: Unsatisfied symbol "main" in file <no file> > > 1 errors. > > Either the person on whose behalf you posted this is also talking to me > in the dbi-users mailing list or you just coincidentally have the exact > same symptoms of the problem - down to the same idiosyncratic > 2.81.HC2.HPUX version number on CSDK. > > When I was sent the actual output of the 'perl Makefile.PL' script, it > turned out that the ESQL/C version was 2.81.FC2 - not HC2 - and the > 32-bit Perl was never going to be able to use the 64-bit CSDK. My > recommendation is to obtain the 32-bit 2.81.UC2 (or 2.81.HC2) version of > CSDK. The alternative is to work out how to make GCC generate 64-bit > code - I know how to do that for Solaris, but there isn't an obvious > mechanism in the HP-UX version - even after scanning 'gcc --help-target' > output. > > > I suspect the issue is with our SDK client. I am not sure where it > > needs to be installed. We have database connectivity on this machine > > via ODBC. I understand that may be an alternative. Our database > > servers are remote. I have conulted our DBAs and they just are not > > familiar with the SDK client, etc. > > > > Thanks for any help you can offer. Please let me know if you need > > addtional details. > > > > > -- > Jonathan Leffler #include <disclaimer.h> > Email: jleffler@earthlink.net, jleffler@us.ibm.com > Guardian of DBD::Informix v2005.01 -- http://dbi.perl.org/ Hi all, I would like to focus your attention on the following point: * Version of IDS (or SE, XPS, OnLine) - though that is not going to material this time. Not sure what you are asking here, sorry. * Have you built any programs with the CSDK you have installed? No, this is a new client for us. * Version of CSDK or ESQL/C (e.g. 2.90.FC1 - the letters and numbers can be important) 2.81.HC2.HPUX my suggestions: 1) check if the client sdk is installed properly. - Check the variables: INFORMIXDIR INFORMIXSERVER PATH LD_LIBRARY_PATH - Check the sqlhosts file /....client sdk directory..../etc/sqlhosts - be sure that the database stores_demo exist and contail the table customer. - Try to compile and execute a program Go in the following directory /....client sdk ..../demo/esqlc there is a file named demo1.ec you can try to compile the file with this command: esql demo1.ec -o filename executing the file you should receive something like: DEMO1 Sample ESQL Program running. Lana Beatty Frank Albertson Dick Baxter DEMO1 Sample Program over. If you'll receive an error you can have more information executing the following command: /....client sdk ... /bin/finderr error_number if this is not working you can't proceed to use perl and his module to connect to informix. 2) double check the client sdk version vi / .... client sdk directory ..../etc/SQLI-cr