Re: Informinx Perl Module Installation Issues

Jonathan Leffler <[email protected]>
Newsgroups gmane.comp.lang.perl.modules.dbi.general
Message-ID <CAH+RLGHvb-_m-yqEh60p8H_BntiUpFrSdZF2=O9pYY4D9QQVHQ@mail.gmail.com>
Hi Sagar,

I've tried to get hold of RHEL Tikanga, but it is pretty old (much older
than the version of Perl you are using) and not available for a
sufficiently nominal fee that I can afford to get it just to sort out your
problem.

Please provide the information requested in the Notes/bug.reports file —
most notably the output of 'perl -V' (capital V), which gives information
about the compilation flags used to create Perl, and whether it is
threaded, etc.  With that information, I will then try to create a version
of Perl analogous to yours, and then install DBI and DBD::Informix.  I'll
be using Ubuntu 14.04 (in a VM), at least in the first instance.  But I had
no problems with the system provided Perl 5.18.2 (compiled with threading).

'perl -V' output for Ubuntu 14.04:

Summary of my perl5 (revision 5 version 18 subversion 2) configuration:

  Platform:
    osname=linux, osvers=3.2.0-58-generic,
archname=x86_64-linux-gnu-thread-multi
    uname='linux brownie 3.2.0-58-generic #88-ubuntu smp tue dec 3 17:37:58
utc 2013 x86_64 x86_64 x86_64 gnulinux '
    config_args='-Dusethreads -Duselargefiles -Dccflags=-DDEBIAN
-D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector --param=ssp-buffer-size=4
-Wformat -Werror=format-security -Dldflags= -Wl,-Bsymbolic-functions
-Wl,-z,relro -Dlddlflags=-shared -Wl,-Bsymbolic-functions -Wl,-z,relro
-Dcccdlflags=-fPIC -Darchname=x86_64-linux-gnu -Dprefix=/usr
-Dprivlib=/usr/share/perl/5.18 -Darchlib=/usr/lib/perl/5.18
-Dvendorprefix=/usr -Dvendorlib=/usr/share/perl5
-Dvendorarch=/usr/lib/perl5 -Dsiteprefix=/usr/local
-Dsitelib=/usr/local/share/perl/5.18.2
-Dsitearch=/usr/local/lib/perl/5.18.2 -Dman1dir=/usr/share/man/man1
-Dman3dir=/usr/share/man/man3 -Dsiteman1dir=/usr/local/man/man1
-Dsiteman3dir=/usr/local/man/man3 -Duse64bitint -Dman1ext=1 -Dman3ext=3perl
-Dpager=/usr/bin/sensible-pager -Uafs -Ud_csh -Ud_ualarm -Uusesfio -Uusenm
-Ui_libutil -Uversiononly -DDEBUGGING=-g -Doptimize=-O2 -Duseshrplib
-Dlibperl=libperl.so.5.18.2 -des'
    hint=recommended, useposix=true, d_sigaction=define
    useithreads=define, usemultiplicity=define
    useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
    use64bitint=define, use64bitall=define, uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -DDEBIAN
-fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
    optimize='-O2 -g',
    cppflags='-D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector
-fno-strict-aliasing -pipe -I/usr/local/include'
    ccversion='', gccversion='4.8.2', gccosandvers=''
    intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
    ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t',
lseeksize=8
    alignbytes=8, prototype=define
  Linker and Libraries:
    ld='cc', ldflags =' -fstack-protector -L/usr/local/lib'
    libpth=/usr/local/lib /lib/x86_64-linux-gnu /lib/../lib
/usr/lib/x86_64-linux-gnu /usr/lib/../lib /lib /usr/lib
    libs=-lgdbm -lgdbm_compat -ldb -ldl -lm -lpthread -lc -lcrypt
    perllibs=-ldl -lm -lpthread -lc -lcrypt
    libc=, so=so, useshrplib=true, libperl=libperl.so.5.18.2
    gnulibc_version='2.19'
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
    cccdlflags='-fPIC', lddlflags='-shared -L/usr/local/lib
-fstack-protector'


Characteristics of this binary (from libperl):
  Compile-time options: HAS_TIMES MULTIPLICITY PERLIO_LAYERS
                        PERL_DONT_CREATE_GVSV
                        PERL_HASH_FUNC_ONE_AT_A_TIME_HARD
                        PERL_IMPLICIT_CONTEXT PERL_MALLOC_WRAP
                        PERL_PRESERVE_IVUV PERL_SAWAMPERSAND USE_64_BIT_ALL
                        USE_64_BIT_INT USE_ITHREADS USE_LARGE_FILES
                        USE_LOCALE USE_LOCALE_COLLATE USE_LOCALE_CTYPE
                        USE_LOCALE_NUMERIC USE_PERLIO USE_PERL_ATOF
                        USE_REENTRANT_API
  Locally applied patches:
    DEBPKG:debian/cpan_definstalldirs - Provide a sensible INSTALLDIRS
default for modules installed from CPAN.
    DEBPKG:debian/db_file_ver - http://bugs.debian.org/340047 Remove overly
restrictive DB_File version check.
    DEBPKG:debian/doc_info - Replace generic man(1) instructions with
Debian-specific information.
    DEBPKG:debian/enc2xs_inc - http://bugs.debian.org/290336 Tweak enc2xs
to follow symlinks and ignore missing @INC directories.
    DEBPKG:debian/errno_ver - http://bugs.debian.org/343351 Remove Errno
version check due to upgrade problems with long-running processes.
    DEBPKG:debian/libperl_embed_doc - http://bugs.debian.org/186778 Note
that libperl-dev package is required for embedded linking
    DEBPKG:fixes/respect_umask - Respect umask during installation
    DEBPKG:debian/writable_site_dirs - Set umask approproately for site
install directories
    DEBPKG:debian/extutils_set_libperl_path - EU:MM: Set location of
libperl.a to /usr/lib
    DEBPKG:debian/no_packlist_perllocal - Don't install .packlist or
perllocal.pod for perl or vendor
    DEBPKG:debian/prefix_changes - Fiddle with *PREFIX and variables
written to the makefile
    DEBPKG:debian/fakeroot - Postpone LD_LIBRARY_PATH evaluation to the
binary targets.
    DEBPKG:debian/instmodsh_doc - Debian policy doesn't install .packlist
files for core or vendor.
    DEBPKG:debian/ld_run_path - Remove standard libs from LD_RUN_PATH as
per Debian policy.
    DEBPKG:debian/libnet_config_path - Set location of libnet.cfg to
/etc/perl/Net as /usr may not be writable.
    DEBPKG:debian/mod_paths - Tweak @INC ordering for Debian
    DEBPKG:debian/module_build_man_extensions -
http://bugs.debian.org/479460 Adjust Module::Build manual page extensions
for the Debian Perl policy
    DEBPKG:debian/prune_libs - http://bugs.debian.org/128355 Prune the list
of libraries wanted to what we actually need.
    DEBPKG:fixes/net_smtp_docs - [rt.cpan.org #36038]
http://bugs.debian.org/100195 Document the Net::SMTP 'Port' option
    DEBPKG:debian/perlivp - http://bugs.debian.org/510895 Make perlivp skip
include directories in /usr/local
    DEBPKG:debian/cpanplus_definstalldirs - http://bugs.debian.org/533707
Configure CPANPLUS to use the site directories by default.
    DEBPKG:debian/cpanplus_config_path - Save local versions of
CPANPLUS::Config::System into /etc/perl.
    DEBPKG:debian/deprecate-with-apt - http://bugs.debian.org/702096 Point
users to Debian packages of deprecated core modules
    DEBPKG:debian/squelch-locale-warnings - http://bugs.debian.org/508764
Squelch locale warnings in Debian package maintainer scripts
    DEBPKG:debian/skip-upstream-git-tests - Skip tests specific to the
upstream Git repository
    DEBPKG:debian/patchlevel - http://bugs.debian.org/567489 List packaged
patches for 5.18.2-2ubuntu1 in patchlevel.h
    DEBPKG:debian/skip-kfreebsd-crash - http://bugs.debian.org/628493 [perl
#96272] Skip a crashing test case in t/op/threads.t on GNU/kFreeBSD
    DEBPKG:fixes/document_makemaker_ccflags - http://bugs.debian.org/628522
[rt.cpan.org #68613] Document that CCFLAGS should include $Config{ccflags}
    DEBPKG:debian/find_html2text - http://bugs.debian.org/640479 Configure
CPAN::Distribution with correct name of html2text
    DEBPKG:debian/hurd_test_skip_stack - http://bugs.debian.org/650175
Disable failing GNU/Hurd tests dist/threads/t/stack.t
    DEBPKG:fixes/manpage_name_Test-Harness - http://bugs.debian.org/650451 [
rt.cpan.org #73399] cpan/Test-Harness: add NAME headings in modules with POD
    DEBPKG:debian/makemaker-pasthru - http://bugs.debian.org/660195 [
rt.cpan.org #28632] Make EU::MM pass LD through to recursive Makefile.PL
invocations
    DEBPKG:debian/perl5db-x-terminal-emulator.patch -
http://bugs.debian.org/668490 Invoke x-terminal-emulator rather than xterm
in perl5db.pl
    DEBPKG:debian/cpan-missing-site-dirs - http://bugs.debian.org/688842
Fix CPAN::FirstTime defaults with nonexisting site dirs if a parent is
writable
    DEBPKG:fixes/memoize_storable_nstore - [rt.cpan.org #77790]
http://bugs.debian.org/587650 Memoize::Storable: respect 'nstore' option
not respected
    DEBPKG:fixes/net_ftp_failed_command - [rt.cpan.org #37700]
http://bugs.debian.org/491062 Net::FTP: cope gracefully with a failed
command
    DEBPKG:fixes/perlbug-patchlist - [3541c11] http://bugs.debian.org/710842
[perl #118433] Make perlbug look up the list of local patches at run time
    DEBPKG:fixes/module_metadata_security_doc - [68cdd4b] CVE-2013-1437
documentation fix
    DEBPKG:fixes/module_metadata_taint_fix - [bff978f]
http://bugs.debian.org/722210 [rt.cpan.org #88576] untaint version, if
needed, in Module::Metadata
    DEBPKG:fixes/IPC-SysV-spelling - http://bugs.debian.org/730558 [
rt.cpan.org #86736] Fix spelling of IPC_CREAT in IPC-SysV documentation
    DEBPKG:fixes/fix-undef-source -
  Built under linux
  Compiled at Mar 27 2014 18:30:28
  @INC:
    /etc/perl
    /usr/local/lib/perl/5.18.2
    /usr/local/share/perl/5.18.2
    /usr/lib/perl5
    /usr/share/perl5
    /usr/lib/perl/5.18
    /usr/share/perl/5.18
    /usr/local/lib/site_perl
    .



On Fri, Aug 8, 2014 at 9:21 AM, sagar nch <[email protected]> wrote:

> Hi Jonathan,
>
> Thanks for the update.
>
> I have run the installation successfully in my lab server and unable to do
> it on production servers.
>
> RHEL version and PERL version on both servers are same.  I will give you
> the complete details.
>
> =================
> *Lab Server*
>
> [root@inhusz1-sdcitnm 5.18.2]# cat /etc/redhat-release
> Red Hat Enterprise Linux Server release *5.5 (Tikanga)*
>
> [root@inhusz1-sdcitnm 5.18.2]# gcc --version
> *gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-48)*
> Copyright (C) 2006 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions.  There is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
>
> [root@inhusz1-sdcitnm DBD-Informix-2013.0521]# perl -v
>
> *This is perl 5, version 18, subversion 2 (v5.18.2) built for x86_64-linux*
>
> Copyright 1987-2013, Larry Wall
>
> Perl may be copied only under the terms of either the Artistic License or
> the
> GNU General Public License, which may be found in the Perl 5 source kit.
>
> Complete documentation for Perl, including FAQ lists, should be found on
> this system using "man perl" or "perldoc perl".  If you have access to the
> Internet, point your browser at http://www.perl.org/, the Perl Home Page.
>
> *Customer Server*
>
> [root@CRPVLX1NETCOOLITNM ~]# cat /etc/redhat-release
> Red Hat Enterprise Linux Server release *5.5 (Tikanga)*
>
> [root@CRPVLX1NETCOOLITNM ~]# gcc --version
> *gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-48)*
> Copyright (C) 2006 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions.  There is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
>
> [root@CRPVLX1NETCOOLITNM]# perl -v
>
> *This is perl 5, version 18, subversion 2 (v5.18.2) built for x86_64-linux*
>
> Copyright 1987-2013, Larry Wall
>
> Perl may be copied only under the terms of either the Artistic License or
> the
> GNU General Public License, which may be found in the Perl 5 source kit.
>
> Complete documentation for Perl, including FAQ lists, should be found on
> this system using "man perl" or "perldoc perl".  If you have access to the
> Internet, point your browser at http://www.perl.org/, the Perl Home Page.
>
>  =================
>
> Could you please let me know what would be the solution to resolve the
> issue.
>
> Thanks,
> Sagar
>
>
> On Fri, Aug 8, 2014 at 6:42 PM, Jonathan Leffler <
> [email protected]> wrote:
>
>> It means there is a mismatch between the code used in compiling
>> DBD::Informix and the code used in compiling Perl.  You've not given
>> explicit platform information (it seems to be a 64-bit RedHat Linux), nor
>> the version of Perl.  This problem occurred semi-regularly…oh, about ten
>> years ago.  It hasn't often been a problem since.  It might be that you're
>> using a threaded Perl, but it isn't supposed to be a problem.
>>
>> Please look at the bug reporting instructions in the file
>> Notes/bug.reports and use the script BugReport.
>>
>> It'll be a couple of days or so before I can look at the problem in any
>> detail.
>>
>>
>>
>> On Thu, Aug 7, 2014 at 11:00 AM, sagar nch <[email protected]> wrote:
>>
>>> Hi Team,
>>>
>>> I am facing issues while running make command while installing the
>>> Informix perl module.
>>>
>>> Here is the error snippet.
>>>
>>> INFORMIXC='/usr/local/bin/perl esqlld' ESQLLD='cc -shared -O2
>>> -L/usr/local/lib -fstack-protector' esql  -shared -O2 -L/usr/local/lib
>>> -fstack-protector Informix.o dbdimp.o dbdattr.o sqltoken.o sqltype.o
>>> ixblob.o odbctype.o kludge.o link.o esqlcver.o esqlc_v6.o  -o
>>> blib/arch/auto/DBD/Informix/Informix.so \
>>>      \
>>>
>>> /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/crt1.o: In
>>> function `_start':
>>> (.text+0x20): undefined reference to `main'
>>> Informix.o: In function `dbi_get_state':
>>> Informix.c:(.text+0x1b): undefined reference to `PL_thr_key'
>>> Informix.c:(.text+0x48): undefined reference to `PL_thr_key'
>>> Informix.c:(.text+0x61): undefined reference to `Perl_get_cv'
>>> Informix.c:(.text+0x82): undefined reference to `Perl_croak_nocontext'
>>> Informix.o: In function `boot_DBD__Informix':
>>> Informix.c:(.text+0x9f): undefined reference to `PL_thr_key'
>>> Informix.c:(.text+0x116): undefined reference to
>>> `Perl_xs_apiversion_bootcheck'
>>> Informix.c:(.text+0x139): undefined reference to
>>> `Perl_xs_version_bootcheck'
>>> Informix.c:(.text+0x168): undefined reference to `Perl_newXS_flags'
>>> Informix.c:(.text+0x1a1): undefined reference to `Perl_newXS_flags'
>>> Informix.c:(.text+0x1da): undefined reference to `Perl_newXS_flags'
>>> Informix.c:(.text+0x213): undefined reference to `Perl_newXS_flags'
>>> Informix.c:(.text+0x24c): undefined reference to `Perl_newXS_flags'
>>> Informix.o:Informix.c:(.text+0x285): more undefined references to
>>> `Perl_newXS_flags' follow
>>> Informix.o: In function `boot_DBD__Informix':
>>> Informix.c:(.text+0x87e): undefined reference to `Perl_newXS'
>>> Informix.c:(.text+0x8a3): undefined reference to `Perl_newXS'
>>> Informix.c:(.text+0x8d2): undefined reference to `Perl_newXS'
>>> Informix.c:(.text+0x901): undefined reference to `Perl_newXS'
>>> Informix.c:(.text+0x926): undefined reference to `Perl_newXS'
>>>
>>> bdattr.o: In function `dbd_ix_db_STORE_attrib':
>>> dbdattr.c:(.text+0x190b): undefined reference to `Perl_sv_2pv_flags'
>>> dbdattr.c:(.text+0x1a33): undefined reference to `PL_thr_key'
>>> dbdattr.c:(.text+0x1a4a): undefined reference to `Perl_sv_2bool_flags'
>>> dbdattr.c:(.text+0x1ad1): undefined reference to `PL_thr_key'
>>> dbdattr.c:(.text+0x1ae5): undefined reference to `Perl_sv_2bool_flags'
>>> dbdattr.c:(.text+0x1cc8): undefined reference to `PL_thr_key'
>>> dbdattr.c:(.text+0x1cdf): undefined reference to `Perl_sv_2bool_flags'
>>> dbdattr.c:(.text+0x1d49): undefined reference to `PL_thr_key'
>>> dbdattr.c:(.text+0x1d60): undefined reference to `Perl_sv_2bool_flags'
>>> dbdattr.c:(.text+0x1dd6): undefined reference to `Perl_croak_nocontext'
>>> dbdattr.c:(.text+0x1e23): undefined reference to `PL_thr_key'
>>> dbdattr.c:(.text+0x1e3a): undefined reference to `Perl_sv_2bool_flags'
>>> dbdattr.c:(.text+0x1e92): undefined reference to `PL_thr_key'
>>> dbdattr.c:(.text+0x1ea6): undefined reference to `Perl_sv_2bool_flags'
>>> dbdattr.c:(.text+0x1eba): undefined reference to `PL_thr_key'
>>> dbdattr.c:(.text+0x1ece): undefined reference to `Perl_sv_2bool_flags'
>>> dbdattr.c:(.text+0x1eff): undefined reference to `PL_thr_key'
>>> dbdattr.c:(.text+0x1f13): undefined reference to `Perl_sv_2bool_flags'
>>> collect2: ld returned 1 exit status
>>> make: *** [blib/arch/auto/DBD/Informix/Informix.so] Error 1
>>>
>>> Please let me know what need to do here.
>>>
>>> -Thanks,
>>> Sagar
>>>
>>
>>
>>
>> --
>> Jonathan Leffler <[email protected]>  #include <disclaimer.h>
>> Guardian of DBD::Informix - v2013.0521 - http://dbi.perl.org
>> "Blessed are we who can laugh at ourselves, for we shall never cease to
>> be amused."
>>
>
>


-- 
Jonathan Leffler <[email protected]>  #include <disclaimer.h>
Guardian of DBD::Informix - v2013.0521 - http://dbi.perl.org
"Blessed are we who can laugh at ourselves, for we shall never cease to be
amused."
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.