phildeman has asked for the wisdom of the Perl Monks concerning the following question:

I am attempting to install DBD::Ingres, but it fails.

I a running perl 5.24 on Redhat Linux Rehl 6.9. I am using cpanm
to do the installation. The build.log lists many warnings, but I am
getting errors, listed below:

dbdimp.sc:147: error: ‘dirty’ undeclared (first use in this function)
dbdimp.sc:147: error: (Each undeclared identifier is reported only once
dbdimp.sc:147: error: for each function it appears in.)
dbdimp.sc:153: error: ‘perl_destruct_level’ undeclared (first use in this function)
dbdimp.sc:357: error: ‘dirty’ undeclared (first use in this function)
dbdimp.sc:359: error: ‘na’ undeclared (first use in this function)
dbdimp.sc:380: error: ‘dirty’ undeclared (first use in this function)
dbdimp.sc:382: error: ‘na’ undeclared (first use in this function)
dbdimp.sc:412: error: ‘sv_undef’ undeclared (first use in this function)
dbdimp.sc:608: error: ‘sv_yes’ undeclared (first use in this function)
dbdimp.sc:608: error: ‘sv_no’ undeclared (first use in this function)
dbdimp.sc:1613: error: ‘na’ undeclared (first use in this function)
dbdimp.sc:1672: error: ‘sv_yes’ undeclared (first use in this function)
dbdimp.sc:1672: error: ‘sv_no’ undeclared (first use in this function)

Any one else experience this problem and resolved it? Or can anyone
provide any thoughts?

Much appreciated

Replies are listed 'Best First'.
Re: DBD::Ingres Installation Failing
by Anonymous Monk on Apr 19, 2017 at 22:14 UTC

    Need to show the log before that

      Here is the log prior to the errors listed in the build.log.


      cpanm (App::cpanminus) 1.7042 on perl 5.024000 built for x86_64-linux-thread-multi
      Work directory is /root/.cpanm/work/1492633313.23016
      You have make /usr/bin/make
      You have LWP 6.25
      You have /bin/tar: tar (GNU tar) 1.23
      Copyright (C) 2010 Free Software Foundation, Inc.
      License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
      This is free software: you are free to change and redistribute it.
      There is NO WARRANTY, to the extent permitted by law.

      Written by John Gilmore and Jay Fenlason.
      You have /usr/bin/unzip
      Searching DBD::Ingres () on cpanmetadb ...
      --> Working on DBD::Ingres
      Fetching http://www.cpan.org/authors/id/S/SR/SREAGLE/DBD-Ingres-0.53.tar.gz
      -> OK
      Unpacking DBD-Ingres-0.53.tar.gz
      Entering DBD-Ingres-0.53
      Checking configure dependencies from META.yml
      Configuring DBD-Ingres-0.53
      Running Makefile.PL

      Configuring DBD::Ingres ...

      Try 'perl Makefile.PL -v'
      if you have any problems.


      Using Ingres in /ingres

      Checking if your kit is complete...
      Looks good
      Generating a Unix-style Makefile
      Writing Makefile for DBD::Ingres
      Writing MYMETA.yml and MYMETA.json
      -> OK
      Checking dependencies from MYMETA.json ...
      Checking if you have Config 0 ... Yes (5.024000)
      Checking if you have ExtUtils::MakeMaker 0 ... Yes (7.22)
      Checking if you have Getopt::Long 0 ... Yes (2.49)
      Checking if you have DBI 1 ... Yes (1.636)
      Building and testing DBD-Ingres-0.53
      cp Ingres.pm blib/lib/DBD/Ingres.pm
      Running Mkbootstrap for Ingres ()
      chmod 644 "Ingres.bs"
      "/opt/...../usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- Ingres.bs blib/arch/auto/DBD/Ingres/Ingres.bs 644
      "/opt/...../usr/bin/perl" -p -e "s/~DRIVER~/Ingres/g" </web/apps/TLINK/lib/perl5/x86_64-linux-thread-multi//auto/DBI/Driver.xst >Ingres.xsi
      "/opt/...../usr/bin/perl" "/opt/...../share/perl5/vendor_perl/ExtUtils/xsubpp" -typemap '/opt/....../share/perl5/ExtUtils/typemap' Ingres.xs > Ingres.xsc
      mv Ingres.xsc Ingres.c
      /ingres/ingres/bin/esqlc -o.h -w -p dbdimp.sc
      ESQL dbdimp.sc:
      gcc -c -I/my_app/lib/perl5/x86_64-linux-thread-multi//auto/DBI -D_REENTRANT -D_GNU_SOURCE -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -DVERSIic -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -DVERSION=\"0.53\" -DXS_VERSION=\"0.53\" -fPIC "-I/opt/....../usr/lib64/perl5/CORE" -Wall -pedantic -Wno-comment -Wtraditional Ingres.c
      In file included from /web/apps/TLINK/lib/perl5/x86_64-linux-thread-multi//auto/DBI/DBIXS.h:23,
      from Ingres.sh:17,
      from Ingres.xs:11:
      /opt/....../usr/lib64/perl5/CORE/perl.h:842:4: warning: suggest not using #elif in traditional C
      /opt/....../usr/lib64/perl5/CORE/perl.h:844:4: warning: suggest not using #elif in traditional C
      /opt/....../usr/lib64/perl5/CORE/perl.h:846:4: warning: suggest not using #elif in traditional C
      /opt/....../usr/lib64/perl5/CORE/perl.h:1192:4: warning: suggest not using #elif in traditional C
      /opt/....../usr/lib64/perl5/CORE/perl.h:1577:40: warning: anonymous variadic macros were introduced in C99
      /opt/....../usr/lib64/perl5/CORE/perl.h:1592:41: warning: anonymous variadic macros were introduced in C99
      /opt/....../usr/lib64/perl5/CORE/perl.h:1946:9: warning: suggest not using #elif in traditional C
      /opt/....../usr/lib64/perl5/CORE/perl.h:1973:9: warning: suggest not using #elif in traditional C
      /opt/....../usr/lib64/perl5/CORE/perl.h:1980:9: warning: suggest not using #elif in traditional C
      /opt/....../usr/lib64/perl5/CORE/perl.h:2385:6: warning: suggest not using #elif in traditional C
      /opt/....../usr/lib64/perl5/CORE/perl.h:2387:6: warning: suggest not using #elif in traditional C
      /opt/....../usr/lib64/perl5/CORE/perl.h:2389:6: warning: suggest not using #elif in traditional C
      /opt/....../usr/lib64/perl5/CORE/perl.h:2681:3: warning: suggest hiding #error from traditional C with an indented #
      In file included from /opt/...../usr/lib64/perl5/CORE/perl.h:2684,
      from /my_app/lib/perl5/x86_64-linux-thread-multi//auto/DBI/DBIXS.h:23,
      from Ingres.sh:17,
      from Ingres.xs:11:
      /opt/....../usr/lib64/perl5/CORE/handy.h:922:9: warning: suggest hiding #error from traditional C with an indented #
      /opt/....../usr/lib64/perl5/CORE/handy.h:1471:2: warning: suggest not using #elif in traditional C
      In file included from /web/apps/TLINK/lib/perl5/x86_64-linux-thread-multi//auto/DBI/DBIXS.h:23,
      from Ingres.sh:17,
      from Ingres.xs:11:
      /opt/....../usr/lib64/perl5/CORE/perl.h:2797:2: warning: suggest not using #elif in traditional C
      /opt/....../usr/lib64/perl5/CORE/perl.h:2799:2: warning: suggest not using #elif in traditional C
      /opt/....../usr/lib64/perl5/CORE/perl.h:2801:2: warning: suggest not using #elif in traditional C
      /opt/....../usr/lib64/perl5/CORE/perl.h:2807:2: warning: suggest not using #elif in traditional C
      /opt/....../usr/lib64/perl5/CORE/perl.h:2809:2: warning: suggest not using #elif in traditional C
      /opt/....../usr/lib64/perl5/CORE/perl.h:3397:2: warning: suggest not using #elif in traditional C
      /opt/....../usr/lib64/perl5/CORE/perl.h:3438:5: warning: suggest not using #elif in traditional C
      /opt/....../usr/lib64/perl5/CORE/perl.h:3730:4: warning: suggest not using #elif in traditional C

      This goes on and on until the errors. Subsequent to the errors is:

      make: *** dbdimp.o Error 1
      -> FAIL Installing DBD::Ingres failed. See /root/.cpanm/work/1492633313.23016/build.log for details. Retry with --force to force install it.>/p>

      Does this give you an idea what can be done to resolve this matter?

        Please post code, data, and logs inside <code></code>. Copy and paste, don't retype. Don't cut away important parts. In case of compile error logs, don't cut away anything. You can edit your posting right now to fix that.

        Also, if you don't use a custom perl, use the system's package manager to install perl modules. I think RH should include DBD::Ingres for the Ingres version that comes with RH. See https://unix.stackexchange.com/questions/6864/how-to-search-for-official-rhel-packages.

        Alexander

        --
        Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so". ;-)