FAQ
I am taking over the Perl stuff for someone that was laid off.  The previous guy built Perl with CGI, DBI and DBD modules for use with a Informix database and IBM IHS web server.  He then tar'd it all up and copied it to a different server and where thing do not all working.  I know, sounds obvious.  There are some scripts that are interactive or run by Unix CRON scheduler on the system and others that are web pages used for reporting.  The interactive stuff works fine on the new system, but the web pages fail.

The error is:
Software error:
install_driver(Informix) failed: Can't load '/home/users/polling/perl/lib/site_perl/5.8.8/sun4-solaris-64/auto/DBD/Informix/Informix.so' for module DBD::Informix: ld.so.1: SdtQuery.pl: fatal: libifsql.so: open failed: No such file or directory at /home/users/polling/perl/lib/5.8.8/sun4-solaris-64/DynaLoader.pm line 230. at (eval 32) line 3 Compilation failed in require at (eval 32) line 3. Perhaps a required shared library or dll isn't installed where expected at /home/users/polling/SDT-2.0/SDT/SDTDB.pm line 443
This is Perl 5.8.8 running on Solaris 2.8 on V490 Hardware. All is 64 bit. I am considering rebuilding these modules. I have the source for DBI and DBD but don't seem to have the source for CGI. I figured I would check with the pros before I start doing things.
Any ideas or suggestions?
Thank you for your time!
Royce

Search Discussions

  • Michael Ludwig at Apr 28, 2010 at 10:05 am

    Am 27.04.2010 um 20:17 schrieb Royce Miller:
    install_driver(Informix) failed: Can't load '/home/users/polling/perl/lib/site_perl/5.8.8/sun4-solaris-64/auto/DBD/Informix/Informix.so' for module DBD::Informix: ld.so.1: SdtQuery.pl: fatal: libifsql.so: open failed: No such file or directory at /home/users/polling/perl/lib/5.8.8/sun4-solaris-64/DynaLoader.pm line 230. at (eval 32) line 3 Compilation failed in require at (eval 32) line 3. Perhaps a required shared library or dll isn't installed where expected at /home/users/polling/SDT-2.0/SDT/SDTDB.pm line 443
    This is the error: "Perhaps a required shared library or dll isn't installed where expected". You need to install DBD::Informix.

    --
    Michael.Ludwig (#) XING.com
  • John Scoles at Apr 28, 2010 at 10:54 am

    Royce Miller wrote:
    I am taking over the Perl stuff for someone that was laid off. The previous guy built Perl with CGI, DBI and DBD modules for use with a Informix database and IBM IHS web server. He then tar'd it all up and copied it to a different server and where thing do not all working. I know, sounds obvious. There are some scripts that are interactive or run by Unix CRON scheduler on the system and others that are web pages used for reporting. The interactive stuff works fine on the new system, but the web pages fail.

    The error is:
    Software error:
    install_driver(Informix) failed: Can't load '/home/users/polling/perl/lib/site_perl/5.8.8/sun4-solaris-64/auto/DBD/Informix/Informix.so' for module DBD::Informix: ld.so.1: SdtQuery.pl: fatal: libifsql.so: open failed: No such file or directory at /home/users/polling/perl/lib/5.8.8/sun4-solaris-64/DynaLoader.pm line 230. at (eval 32) line 3 Compilation failed in require at (eval 32) line 3.
    You do not have the correct Informix binaryes install, or they are not
    installed or you are not pointing to them in the ENV. I do not think
    it has anything to do with CGI.

    Perhaps a required shared library or dll isn't installed where expected at /home/users/polling/SDT-2.0/SDT/SDTDB.pm line 443
    This is Perl 5.8.8 running on Solaris 2.8 on V490 Hardware. All is 64 bit. I am considering rebuilding these modules. I have the source for DBI and DBD but don't seem to have the source for CGI. I figured I would check with the pros before I start doing things.
    Any ideas or suggestions?
    Thank you for your time!
    Royce
  • M. allan noah at Apr 28, 2010 at 11:12 am

    On Tue, Apr 27, 2010 at 2:17 PM, Royce Miller wrote:

    The interactive stuff works fine on the new system, but the web pages fail.
    Sounds like the informix client libs are either not accessible to the
    apache/cgi user, or the environment variables pointing to them are
    missing when running under cgi.

    allan
    --
    "The truth is an offense, but not a sin"
  • Jonathan Leffler at Apr 28, 2010 at 1:55 pm

    On Tue, Apr 27, 2010 at 11:17 AM, Royce Miller wrote:

    I am taking over the Perl stuff for someone that was laid off. The
    previous guy built Perl with CGI, DBI and DBD modules for use with a
    Informix database and IBM IHS web server. He then tar'd it all up and
    copied it to a different server and where thing do not all working. I know,
    sounds obvious. There are some scripts that are interactive or run by Unix
    CRON scheduler on the system and others that are web pages used for
    reporting. The interactive stuff works fine on the new system, but the web
    pages fail.

    The error is:
    Software error:
    install_driver(Informix) failed: Can't load
    '/home/users/polling/perl/lib/site_perl/5.8.8/sun4-solaris-64/auto/DBD/Informix/Informix.so'
    for module DBD::Informix: ld.so.1: SdtQuery.pl: fatal: libifsql.so: open
    failed: No such file or directory at
    /home/users/polling/perl/lib/5.8.8/sun4-solaris-64/DynaLoader.pm line 230.
    at (eval 32) line 3 Compilation failed in require at (eval 32) line 3.
    Perhaps a required shared library or dll isn't installed where expected
    at /home/users/polling/SDT-2.0/SDT/SDTDB.pm line 443
    This is Perl 5.8.8 running on Solaris 2.8 on V490 Hardware. All is 64 bit.
    I am considering rebuilding these modules. I have the source for DBI and
    DBD but don't seem to have the source for CGI. I figured I would check with
    the pros before I start doing things.
    Any ideas or suggestions?
    Thank you for your time!
    Royce

    Dear Royce,

    This is all about Informix and nothing to do with CGI per se - as others
    have said. In future, please include DBD::Informix in the subject line - it
    helps me spot that the question is about Informix. Or copy the email
    address dbd.informix@gmail.com with the request too. This information is in
    the README file for DBD::Informix.

    You should find under one of the DBD/Informix directories (probably
    /home/users/polling/perl/lib/site_perl/5.10.1/sun4-solaris-64/DBD/Informix)
    you should a file Defaults.pm. In there, you should find a value for
    INFORMIXDIR.


    sub default_INFORMIXDIR
    {
    return '/usr/informix/11.50.FC3';
    }
    sub default_INFORMIXSERVER
    {
    return 'black_19';
    }

    This is from my machine (Solaris 10, Perl 5.10.1).

    You need to ensure that the LD_LIBRARY_PATH (or LD_LIBRARY_PATH_64) includes
    the directories:

    $INFORMIXDIR/lib
    $INFORMIXDIR/lib/esql

    If the specified directory does not exist, then you need to review what to
    do next. Options include (1) creating a symlink at the official location
    pointing to the current in-service $INFORMIXDIR, (2) poking around the
    ld.so.1 configuration with crle (intuitive name!) to add Informix
    directories to the system list of directories, or (3) rebuilding
    DBD::Informix to use the new location of $INFORMIXDIR.

    Option (3) may be the 'best' solution. You can also build DBD::Informix
    with the environment variable DBD_INFORMIX_RELOCATABLE_INFORMIXDIR set to 1
    or yes or anything else that Perl will evaluate as 'true' (so not empty, nor
    0). This means that the libraries will be linked solely via the
    LD_LIBRARY_PATH or crle settings - rather than having a path built in. This
    is more typically a nuisance (especially in contexts such as web servers -
    because web servers reset their environment completely and zap the inherited
    value for LD_LIBRARY_PATH) and is not the default behaviour.

    --
    Jonathan Leffler <jonathan.leffler@gmail.com> #include <disclaimer.h>
    Guardian of DBD::Informix - v2008.0513 - http://dbi.perl.org
    "Blessed are we who can laugh at ourselves, for we shall never cease to be
    amused."
  • Royce Miller at Apr 28, 2010 at 5:31 pm
    I am working with the Informix DBA.  The original DBA also got laid off so he didn't install.  But he is comparing this environment with the other environment that is working.  He is also going to create a "stores" database so I can rebuild DBD on the newer system.  Meanwhile, I have confirmed the Defaults.pm is correct.

    I will provide more information or the solution once I have it.

    Thank you to all that have responded for your assistance!

    Royce




    ________________________________
    From: Jonathan Leffler <jonathan.leffler@gmail.com>
    To: Royce Miller <royce111@pacbell.net>
    Cc: dbi-users@perl.org; Guardian of DBD::Informix <dbd.informix@gmail.com>
    Sent: Wed, April 28, 2010 6:54:34 AM
    Subject: Re: DBI/DBD question




    On Tue, Apr 27, 2010 at 11:17 AM, Royce Miller wrote:

    I am taking over the Perl stuff for someone that was laid off.  The previous guy built Perl with CGI, DBI and DBD modules for use with a Informix database and IBM IHS web server.  He then tar'd it all up and copied it to a different server and where thing do not all working.  I know, sounds obvious.  There are some scripts that are interactive or run by Unix CRON scheduler on the system and others that are web pages used for reporting.  The interactive stuff works fine on the new system, but the web pages fail.
    The error is:
    Software error:
    install_driver(Informix) failed: Can't load '/home/users/polling/perl/lib/site_perl/5.8.8/sun4-solaris-64/auto/DBD/Informix/Informix.so' for module DBD::Informix: ld.so.1: SdtQuery.pl: fatal: libifsql.so: open failed: No such file or directory at /home/users/polling/perl/lib/5.8.8/sun4-solaris-64/DynaLoader.pm line 230.   at (eval 32) line 3  Compilation failed in require at (eval 32) line 3.  Perhaps a required shared library or dll isn't installed where expected   at /home/users/polling/SDT-2.0/SDT/SDTDB.pm line 443
    This is Perl 5.8.8 running on Solaris 2.8 on V490 Hardware.  All is 64 bit.  I am considering rebuilding these modules.  I have the source for DBI and DBD but don't seem to have the source for CGI.  I figured I would check with the pros before I start doing things.
    Any ideas or suggestions?
    Thank you for your time!
    Royce
    Dear Royce,

    This is all about Informix and nothing to do with CGI per se - as others have said.  In future, please include DBD::Informix in the subject line - it helps me spot that the question is about Informix.  Or copy the email address dbd.informix@gmail.com with the request too.  This information is in the README file for DBD::Informix.

    You should find under one of the DBD/Informix directories (probably /home/users/polling/perl/lib/site_perl/5.10.1/sun4-solaris-64/DBD/Informix) you should a file Defaults.pm.  In there, you should find a value for INFORMIXDIR.


    sub default_INFORMIXDIR
    {
    return '/usr/informix/11.50.FC3';
    }
    sub default_INFORMIXSERVER
    {
    return 'black_19';
    }

    This is from my machine (Solaris 10, Perl 5.10.1).

    You need to ensure that the LD_LIBRARY_PATH (or LD_LIBRARY_PATH_64) includes the directories:

    $INFORMIXDIR/lib
    $INFORMIXDIR/lib/esql

    If the specified directory does not exist, then you need to review what to do next.  Options include (1) creating a symlink at the official location pointing to the current in-service $INFORMIXDIR, (2) poking around the ld.so.1 configuration with crle (intuitive name!) to add Informix directories to the system list of directories, or (3) rebuilding DBD::Informix to use the new location of $INFORMIXDIR.

    Option (3) may be the 'best' solution.  You can also build DBD::Informix with the environment variable DBD_INFORMIX_RELOCATABLE_INFORMIXDIR set to 1 or yes or anything else that Perl will evaluate as 'true' (so not empty, nor 0).  This means that the libraries will be linked solely via the LD_LIBRARY_PATH or crle settings - rather than having a path built in.  This is more typically a nuisance (especially in contexts such as web servers - because web servers reset their environment completely and zap the inherited value for LD_LIBRARY_PATH) and is not the default behaviour.

    --
    Jonathan Leffler <jonathan.leffler@gmail.com>  #include <disclaimer.h>
    Guardian of DBD::Informix - v2008.0513 - http://dbi.perl.org
    "Blessed are we who can laugh at ourselves, for we shall never cease to be amused."
  • Royce Miller at Apr 30, 2010 at 4:07 pm
    Rebuilding DBD::Informix on the new system resolved my problems.

    Thanks again to all that provided assistance!

    Royce




    ________________________________
    From: Jonathan Leffler <jonathan.leffler@gmail.com>
    To: Royce Miller <royce111@pacbell.net>
    Cc: dbi-users@perl.org; Guardian of DBD::Informix <dbd.informix@gmail.com>
    Sent: Wed, April 28, 2010 6:54:34 AM
    Subject: Re: DBI/DBD question




    On Tue, Apr 27, 2010 at 11:17 AM, Royce Miller wrote:

    I am taking over the Perl stuff for someone that was laid off.  The previous guy built Perl with CGI, DBI and DBD modules for use with a Informix database and IBM IHS web server.  He then tar'd it all up and copied it to a different server and where thing do not all working.  I know, sounds obvious.  There are some scripts that are interactive or run by Unix CRON scheduler on the system and others that are web pages used for reporting.  The interactive stuff works fine on the new system, but the web pages fail.
    The error is:
    Software error:
    install_driver(Informix) failed: Can't load '/home/users/polling/perl/lib/site_perl/5.8.8/sun4-solaris-64/auto/DBD/Informix/Informix.so' for module DBD::Informix: ld.so.1: SdtQuery.pl: fatal: libifsql.so: open failed: No such file or directory at /home/users/polling/perl/lib/5.8.8/sun4-solaris-64/DynaLoader.pm line 230.   at (eval 32) line 3  Compilation failed in require at (eval 32) line 3.  Perhaps a required shared library or dll isn't installed where expected   at /home/users/polling/SDT-2.0/SDT/SDTDB.pm line 443
    This is Perl 5.8.8 running on Solaris 2.8 on V490 Hardware.  All is 64 bit.  I am considering rebuilding these modules.  I have the source for DBI and DBD but don't seem to have the source for CGI.  I figured I would check with the pros before I start doing things.
    Any ideas or suggestions?
    Thank you for your time!
    Royce
    Dear Royce,

    This is all about Informix and nothing to do with CGI per se - as others have said.  In future, please include DBD::Informix in the subject line - it helps me spot that the question is about Informix.  Or copy the email address dbd.informix@gmail.com with the request too.  This information is in the README file for DBD::Informix.

    You should find under one of the DBD/Informix directories (probably /home/users/polling/perl/lib/site_perl/5.10.1/sun4-solaris-64/DBD/Informix) you should a file Defaults.pm.  In there, you should find a value for INFORMIXDIR.


    sub default_INFORMIXDIR
    {
    return '/usr/informix/11.50.FC3';
    }
    sub default_INFORMIXSERVER
    {
    return 'black_19';
    }

    This is from my machine (Solaris 10, Perl 5.10.1).

    You need to ensure that the LD_LIBRARY_PATH (or LD_LIBRARY_PATH_64) includes the directories:

    $INFORMIXDIR/lib
    $INFORMIXDIR/lib/esql

    If the specified directory does not exist, then you need to review what to do next.  Options include (1) creating a symlink at the official location pointing to the current in-service $INFORMIXDIR, (2) poking around the ld.so.1 configuration with crle (intuitive name!) to add Informix directories to the system list of directories, or (3) rebuilding DBD::Informix to use the new location of $INFORMIXDIR.

    Option (3) may be the 'best' solution.  You can also build DBD::Informix with the environment variable DBD_INFORMIX_RELOCATABLE_INFORMIXDIR set to 1 or yes or anything else that Perl will evaluate as 'true' (so not empty, nor 0).  This means that the libraries will be linked solely via the LD_LIBRARY_PATH or crle settings - rather than having a path built in.  This is more typically a nuisance (especially in contexts such as web servers - because web servers reset their environment completely and zap the inherited value for LD_LIBRARY_PATH) and is not the default behaviour.

    --
    Jonathan Leffler <jonathan.leffler@gmail.com>  #include <disclaimer.h>
    Guardian of DBD::Informix - v2008.0513 - http://dbi.perl.org
    "Blessed are we who can laugh at ourselves, for we shall never cease to be amused."

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupdbi-users @
categoriesperl
postedApr 27, '10 at 6:17p
activeApr 30, '10 at 4:07p
posts7
users6
websitedbi.perl.org

People

Translate

site design / logo © 2022 Grokbase