Dear Marco,

I thought I remembered seeing this before, and when I looked at my email 
archive at work, sure enough, on 2004-10-05 09:49 -07:00, I responded to 
your questions.  Did you not receive the email from me?

Is there any risk that your response was filtered out before reaching me 
because of viral contamination -- did you reply from a Windows machine, in 
other words?

Your previous subject line was 'problem install DBD Informix'.  I'm 
cutting and pasting my previous comments again, on the grounds that you 
must not have seen them...

  ====

On Tue, 5 Oct 2004 14:23:26 +0200, Marco Avvisano
<[EMAIL PROTECTED]> wrote:
> i'm tryng to install DBD module for Informix on a Red Hat Enterprise 
Linux ES release 3
> these are the error when i exec Makefile.PL.
> 
> #######################
> perl Makefile.PL
> 
> Configuring IBM Informix Database Driver for Perl Version 2003.04 
(2003-03-05) (aka DBD::Informix)
>         You are using DBI version 1.43 and Perl version 5.008
> Remember to actually read the README file!
> 
> Perl:     perl5.008 i386-linux-thread-multi dl_dlopen.xs
> System:   linux tweet
> Compiler: gcc -O2 -g -pi -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS 
-DDEBUGGING -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE 
-D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm

Perl 5.8.0?  I guess you're using the system provided version rather
than your own build.

> Using IBM Informix CSDK Version 2.81, IBM Informix-ESQL Version 
9.53.UC2X5 from /opt/informix

Mostly good - I'm not sure about the X5 designation (it means it is a
5th patched revision of UC2 - but doesn't tell me whether it was a
specific patch for you or something that is generally available).

> Beware: DBD::Informix is not yet aware of all the new IUS data types.
> 
> Assert macro will be disabled!
> 
> lib/DBD/Informix/Defaults.pm written OK
> esqlvrsn.h written OK
> esqlinfo.h written OK
> 
> Gosh!  Perl doesn't think your compiler handles prototypes.
> Well, even though I don't believe it, we'll take Perl's word
> for it and we won't try to force them into use.  Don't you
> need to upgrade your compiler?  If you run into compilation
> problems with the test program, you will need to revisit this
> issue.

That's odd.  I need your 'perl -V' output - as the README file says
you should supply.  It is a warning, but I've not seen it in ages. 
I'll need to review what the heck is wrong via the configuration
information in the 'perl -V' output.  It is most likely an error in
the Makefile.PL script.

> Testing whether your Informix test environment will work...
> sh: -c: line 2: unexpected EOF while looking for matching `''
> sh: -c: line 3: syntax error: unexpected end of file
> Failed to compile esqltest.ec to esqltestub

That, too, is very odd.  What has RedHat done to break shell scripts? 
(I'm jaundiced against RedHat at the moment - they are getting to be
as bad as Microsoft at breaking working software with every upgrade. 
And that's not easy to achieve!)

Please rerun with DBD_INFORMIX_DEBUG_ESQLTEST=yes set in the
environment, and send me the output:

DBD_INFORMIX_DEBUG_ESQLTEST=yes perl Makefile.PL 2>&1 | tee log

Please read the README file for details about the information required
when reporting problems.
  ====

As far as I know, you have not responded with the information I requested. 
 (Versions of everything; environment; specified log files.)  Those 'sh 
-c' lines really puzzle me - what on earth is going on there?


There are some issues with RedHat.  RHEL3 update 3 has introduced a 
feature called, IIRC, Exec-Guard, which amongst other things loads shared 
libraries at random addresses.  This can easily get in the way of 
Informix's fixed address shared-memory communication buffer.  The 
indications are that if you use olsoctcp connection (network connections) 
instead, then the system works fine.  The trouble is that RHEL3 randomly 
loads a shared library at the addresses we expect to use - the memory 
fragmentation problems can be really bad when trying to get big hunks of 
shared memory for the database server itself.  ('Stable Enterprise 
operating system - my foot!'  You can't do that sort of thing in an update 
release!)  However, that is a problem you would encounter much later in 
the build process - when running the tests, to be precise (possibly the 
ESQL/C test before building the makefile, more likely the main module 
testing phase).  You haven't got that far yet.

I also note that you're using an 'i386-linux-thread-multi' version of 
Perl.  I'm not convinced that's all that safe for DBD::Informix.  The 
'multi' bit refers to 'multiplicity', meaning that you can have multiple 
Perl interpreters in a single executable, IIRC.  And the thread bit is 
self-explanatory, but I don't think you're advised to use it with DBI. You 
might need to set DBD_INFORMIX_ESQLC_LINKAGE="-shared -thread" and set 
THLIB (I think that's the correct name) to the appropriate library name 
(likely POSIX or posix -- check the ESQL/C release notes).  Again, I don't 
think this is your immediate issue - those errors are weird in the 
extreme.

I note that Makefile.PL looks at $Config{"prototype"} to find out whether 
your C compiler supports prototypes.  One reason for asking for the 'perl 
-V' output is to see whether something weird has happened to that bit of 
the Perl configuration.

--
Jonathan Leffler ([EMAIL PROTECTED])
STSM, Informix Database Engineering, IBM Data Management
4100 Bohannon Drive, Menlo Park, CA 94025
Tel: +1 650-926-6921   Tie-Line: 630-6921
      "I don't suffer from insanity; I enjoy every minute of it!"



Jonathan Leffler <[EMAIL PROTECTED]> wrote on 10/10/2004 09:39:12 
PM:

> ---------- Forwarded message ----------
> From: Marco Avvisano <[EMAIL PROTECTED]>
> Date: Fri, 8 Oct 2004 10:30:06 +0200
> Subject: DBD::Informix A configuration failure
> To: [EMAIL PROTECTED]
> Cc: [EMAIL PROTECTED]
> 
> 
> 
> 
> I have problem to install DBD Informix module on Red Hat Enterprise
> Linux ES release 3
> 
> #####
> perl Makefile.PL
> 
> Configuring IBM Informix Database Driver for Perl Version 2003.04
> (2003-03-05) (aka DBD::Informix)
>         You are using DBI version 1.45 and Perl version 5.008
> Remember to actually read the README file!
> 
> Perl:     perl5.008 i386-linux-thread-multi dl_dlopen.xs
> System:   linux tweet
> Compiler: gcc -O2 -g -pi -D_REENTRANT -D_GNU_SOURCE
> -DTHREADS_HAVE_PIDS -DDEBUGGING -fno-strict-aliasing
> -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
> -I/usr/include/gdbm
> 
> Using IBM Informix CSDK Version 2.81, IBM Informix-ESQL Version
> 9.53.UC2X5 from /opt/informix
> 
> Beware: DBD::Informix is not yet aware of all the new IUS data types.
> 
> Assert macro will be disabled!
> 
> lib/DBD/Informix/Defaults.pm written OK
> esqlvrsn.h written OK
> esqlinfo.h written OK
> 
> Gosh!  Perl doesn't think your compiler handles prototypes.
> Well, even though I don't believe it, we'll take Perl's word
> for it and we won't try to force them into use.  Don't you
> need to upgrade your compiler?  If you run into compilation
> problems with the test program, you will need to revisit this
> issue.
> Testing whether your Informix test environment will work...
> sh: -c: line 2: unexpected EOF while looking for matching `''
> sh: -c: line 3: syntax error: unexpected end of file
> Failed to compile esqltest.ec to esqltestub
> 
> ########
> 
> any suggestions ?
> 
> thanks for help
> 
> Marco
> 
> 
> 
> -- 
> Jonathan Leffler <[EMAIL PROTECTED]>  #include <disclaimer.h>
> Guardian of DBD::Informix - v2003.04 - http://dbi.perl.org
> "I don't suffer from insanity - I enjoy every minute of it."

Reply via email to