FAQ
Hello,
I'm having a trouble when i try to execute a simple perl program.

Perl version : 5.6.1.
OS : SunOS 5.8

The source code:

#!/usr/local/bin/perl -w

use DBI;
use Sys::Hostname;

$dbh = DBI->connect( "dbi:Ingres:kpreprod::maj", "kmaj" );

$dbh->commit ;

I get the following message :

install_driver(Ingres) failed: Can't load '/usr/local/lib/perl5/site_perl/5.6.1/
sun4-solaris/auto/DBD/Ingres/Ingres.so'
for module DBD::Ingres: ld.so.1: perl: fatal: libinterp.1.so: open failed: No
such file or directory at /usr/local/lib/p
erl5/5.6.1/sun4-solaris/DynaLoader.pm line 206.
at (eval 1) line 3
Compilation failed in require at (eval 1) line 3.
Perhaps a required shared library or dll isn't installed where expected
at test.pl line 8


Thanks a lot for any help.

Search Discussions

  • Jonathan Leffler at Nov 9, 2005 at 4:34 pm

    On 11/9/05, said.laoui@free.fr wrote:
    Hello,
    I'm having a trouble when i try to execute a simple perl program.

    Perl version : 5.6.1.
    OS : SunOS 5.8

    The source code:

    #!/usr/local/bin/perl -w

    use DBI;
    use Sys::Hostname;

    $dbh = DBI->connect( "dbi:Ingres:kpreprod::maj", "kmaj" );

    $dbh->commit ;

    I get the following message :

    install_driver(Ingres) failed: Can't load
    '/usr/local/lib/perl5/site_perl/5.6.1/
    sun4-solaris/auto/DBD/Ingres/Ingres.so'
    for module DBD::Ingres: ld.so.1: perl: fatal: libinterp.1.so<http://libinterp.1.so>:
    open failed: No
    such file or directory at /usr/local/lib/p
    erl5/5.6.1/sun4-solaris/DynaLoader.pm line 206.
    at (eval 1) line 3
    Compilation failed in require at (eval 1) line 3.
    Perhaps a required shared library or dll isn't installed where expected
    at test.pl line 8



    Which part of the error message don't you understand? Either you don't have
    DBD::Ingres installed, or you don't have the Ingres libraries that it
    depends on installed.


    --
    Jonathan Leffler <jonathan.leffler@gmail.com> #include <disclaimer.h>
    Guardian of DBD::Informix - v2005.02 - http://dbi.perl.org
    "I don't suffer from insanity - I enjoy every minute of it."
  • Eric Lenio at Nov 9, 2005 at 4:55 pm

    On Wed, Nov 09, 2005 at 08:34:39AM -0800, Jonathan Leffler wrote:
    On 11/9/05, said.laoui@free.fr wrote:

    Hello,
    I'm having a trouble when i try to execute a simple perl program.

    Perl version : 5.6.1.
    OS : SunOS 5.8

    The source code:

    #!/usr/local/bin/perl -w

    use DBI;
    use Sys::Hostname;

    $dbh = DBI->connect( "dbi:Ingres:kpreprod::maj", "kmaj" );

    $dbh->commit ;

    I get the following message :

    install_driver(Ingres) failed: Can't load
    '/usr/local/lib/perl5/site_perl/5.6.1/
    sun4-solaris/auto/DBD/Ingres/Ingres.so'
    for module DBD::Ingres: ld.so.1: perl: fatal: libinterp.1.so<http://libinterp.1.so>:
    open failed: No
    such file or directory at /usr/local/lib/p
    erl5/5.6.1/sun4-solaris/DynaLoader.pm line 206.
    at (eval 1) line 3
    Compilation failed in require at (eval 1) line 3.
    Perhaps a required shared library or dll isn't installed where expected
    at test.pl line 8



    Which part of the error message don't you understand? Either you don't have
    DBD::Ingres installed, or you don't have the Ingres libraries that it
    depends on installed.


    --
    Jonathan Leffler <jonathan.leffler@gmail.com> #include <disclaimer.h>
    Guardian of DBD::Informix - v2005.02 - http://dbi.perl.org
    "I don't suffer from insanity - I enjoy every minute of it."
    Check that LD_LIBRARY_PATH is set, and it includes $II_SYSTEM/ingres/lib.
  • Said Laoui at Nov 10, 2005 at 1:15 pm
    Thank you for your answer.
    I have checked that LD_LIBRARY_PATH is set, and it includes
    $II_SYSTEM/ingres/lib.

    I check that DBD::Ingres is present (version 0.30).
    And i have the following line in my .profile :
    LD_LIBRARY_PATH=/lib:/usr/ccs/lib:/usr/ucblib:/usr/local/lib:$II_SYSTEM/ingres/lib:$LD_LIBRAR
    Y_PATH; export LD_LIBRARY_PATH

    Thank you for your help.


    Selon Eric Lenio <dbi-users@lenio.net>:
    On Wed, Nov 09, 2005 at 08:34:39AM -0800, Jonathan Leffler wrote:
    On 11/9/05, said.laoui@free.fr wrote:

    Hello,
    I'm having a trouble when i try to execute a simple perl program.

    Perl version : 5.6.1.
    OS : SunOS 5.8

    The source code:

    #!/usr/local/bin/perl -w

    use DBI;
    use Sys::Hostname;

    $dbh = DBI->connect( "dbi:Ingres:kpreprod::maj", "kmaj" );

    $dbh->commit ;

    I get the following message :

    install_driver(Ingres) failed: Can't load
    '/usr/local/lib/perl5/site_perl/5.6.1/
    sun4-solaris/auto/DBD/Ingres/Ingres.so'
    for module DBD::Ingres: ld.so.1: perl: fatal:
    libinterp.1.so<http://libinterp.1.so>:
    open failed: No
    such file or directory at /usr/local/lib/p
    erl5/5.6.1/sun4-solaris/DynaLoader.pm line 206.
    at (eval 1) line 3
    Compilation failed in require at (eval 1) line 3.
    Perhaps a required shared library or dll isn't installed where expected
    at test.pl line 8



    Which part of the error message don't you understand? Either you don't have
    DBD::Ingres installed, or you don't have the Ingres libraries that it
    depends on installed.


    --
    Jonathan Leffler <jonathan.leffler@gmail.com> #include <disclaimer.h>
    Guardian of DBD::Informix - v2005.02 - http://dbi.perl.org
    "I don't suffer from insanity - I enjoy every minute of it."
    Check that LD_LIBRARY_PATH is set, and it includes $II_SYSTEM/ingres/lib.
  • Jonathan Leffler at Nov 10, 2005 at 2:03 pm

    On 11/10/05, said.laoui@free.fr wrote:
    Thank you for your answer.
    I have checked that LD_LIBRARY_PATH is set, and it includes
    $II_SYSTEM/ingres/lib.

    I check that DBD::Ingres is present (version 0.30).
    And i have the following line in my .profile :

    LD_LIBRARY_PATH=/lib:/usr/ccs/lib:/usr/ucblib:/usr/local/lib:$II_SYSTEM/ingres/lib:$LD_LIBRAR
    Y_PATH; export LD_LIBRARY_PATH

    Where's II_SYSTEM set? What is it set to?

    Selon Eric Lenio wrote:
    On Wed, Nov 09, 2005 at 08:34:39AM -0800, Jonathan Leffler wrote:
    On 11/9/05, said.laoui@free.fr wrote:
    I'm having a trouble when i try to execute a simple perl program.

    Perl version : 5.6.1.
    OS : SunOS 5.8

    The source code:
    [...]
    $dbh = DBI->connect( "dbi:Ingres:kpreprod::maj", "kmaj" );
    [...]
    I get the following message :

    install_driver(Ingres) failed: Can't load
    '/usr/local/lib/perl5/site_perl/5.6.1/
    sun4-solaris/auto/DBD/Ingres/Ingres.so'
    for module DBD::Ingres: ld.so.1: perl: fatal:
    libinterp.1.so <http://libinterp.1.so>:
    open failed: No
    such file or directory at /usr/local/lib/p
    erl5/5.6.1/sun4-solaris/DynaLoader.pm line 206.
    at (eval 1) line 3
    Compilation failed in require at (eval 1) line 3.
    Perhaps a required shared library or dll isn't installed where
    expected
    at test.pl line 8
    Which part of the error message don't you understand? Either you don't
    have
    DBD::Ingres installed, or you don't have the Ingres libraries that it
    depends on installed.
    Check that LD_LIBRARY_PATH is set, and it includes
    $II_SYSTEM/ingres/lib.

    OK - so you're going to have to do some rather detailed tracking. In this
    case, ldd is your friend.

    I don't recognize libinterp.so - it is not clear to me whether it is
    something that is missing, or was the module that couldn't be loaded because
    something else was missing.

    Step 1: track down libinterp.so -- in extremis: find / -name libinterp.so-print

    1A: You can't find libinterp.so: rebuild DBD::Ingres (let's hope you don't
    need to rebuild Perl + DBI too).
    1B: You find libinterp.so - it is part of Perl.
    Run ldd on Ingres.so and see which shared libraries it can find - and which
    it can't.
    * This one:
    /usr/local/lib/perl5/site_perl/5.6.1/sun4-solaris/auto/DBD/Ingres/Ingres.so
    Fix things so everything is found.
    1C: You find libinterp.so - it is part of Ingres.
    Run ldd on libinterp.so and see which shared libraries it can't find.

    For missing libraries, do a scan (if necessary 'find / -name "*libwhatnot*"
    -print') to see whether they're on the system. If not, rebuild DBD::Ingres.

    Actually, if you want to short circuit the investigation - rebuild, retest,
    reinstall DBD::Ingres.

    --
    Jonathan Leffler <jonathan.leffler@gmail.com> #include <disclaimer.h>
    Guardian of DBD::Informix - v2005.02 - http://dbi.perl.org
    "I don't suffer from insanity - I enjoy every minute of it."

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupdbi-users @
categoriesperl
postedNov 9, '05 at 12:13p
activeNov 10, '05 at 2:03p
posts5
users3
websitedbi.perl.org

People

Translate

site design / logo © 2022 Grokbase