Mysql-DBD Perl module Installation Problem in HPUX - HP UX

This is a discussion on Mysql-DBD Perl module Installation Problem in HPUX - HP UX ; Hi, I am facing the build problem while installing the DBD-MySql perl module (ver 2.9008) using both GCC and CC compilers in HP-UX machine. For the Build using GCC, the compiler error is produced due to the unknown GCC compiler ...

+ Reply to Thread
Results 1 to 2 of 2

Thread: Mysql-DBD Perl module Installation Problem in HPUX

  1. Mysql-DBD Perl module Installation Problem in HPUX

    Hi,

    I am facing the build problem while installing the DBD-MySql perl
    module (ver 2.9008) using both GCC and CC compilers in HP-UX machine.

    For the Build using GCC, the compiler error is produced due to the
    unknown GCC compiler option "+DAportable".

    For the Build using CC, the preprocessor error is produced due to the
    recursive declration of macro "PerlIO" in perlio.h file.

    Please give me the solution to get rid of this problem.

    Thanks in advance.

    Regards,
    Arun.

    The following is the log for both build.


    ================================================== ========================================
    DBD-Mysql-2.9008 Perl module Build in HP-UX 11.11 using GCC
    ================================================== ========================================

    # uname -a
    HP-UX hpccase B.11.11 U 9000/871 2015587066 unlimited-user license

    # perl -v
    This is perl, v5.8.7 built for PA-RISC2.0

    # gcc -v
    Using built-in specs.
    Target: hppa2.0w-hp-hpux11.11
    Configured with:
    /scratch/joseph/pkgbuild/3.3.1/hpux-11/gcc-4.0.0/configure
    --enable-languages=c,c++ --enable-threads=posix --disable-nls

    --disable-libmudflap --with-gnu-as --without-gnu-ld
    --with-as=/usr/local/bin/as --with-ld=/usr/ccs/bin/ld
    --prefix=/usr/local
    Thread model: posix
    gcc version 4.0.0

    # perl Makefile.PL CC=gcc
    I will use the following settings for compiling and testing:

    cflags (mysql_config) =
    -I/cmdisk1/mysql-max-4.1.12-hp-hpux11.11-hppa2.0w/include +DAportable
    libs (mysql_config) =
    -L/cmdisk1/mysql-max-4.1.12-hp-hpux11.11-hppa2.0w/lib -lmysqlclient -lz
    -lcrypt -lnsl -lm
    mysql_config (guessed ) = mysql_config
    nocatchstderr (default ) = 0
    nofoundrows (default ) = 0
    ssl (guessed ) = 0
    testdb (default ) = test
    testhost (default ) =
    testpassword (default ) =
    testsocket (default ) =
    testuser (default ) =

    To change these settings, see 'perl Makefile.PL --help' and
    'perldoc INSTALL'.

    Note (probably harmless): No library found for -lz
    Using DBI 1.48 (for perl 5.008007 on PA-RISC2.0) installed in
    /opt/perl/lib/site_perl/5.8.7/PA-RISC2.0/auto/DBI/
    Writing Makefile for DBD::mysql
    # make
    gcc -c -I/opt/perl/lib/site_perl/5.8.7/PA-RISC2.0/auto/DBI/
    -I/cmdisk1/mysql-max-4.1.12-hp-hpux11.11-hppa2.0w/includ
    e +DAportable -DDBD_MYSQL_INSERT_ID_IS_GOOD -g -mpa-risc-2-0
    -D_HPUX_SOURCE -DDEBUGGING -fno-strict-aliasing -pipe -I/pro/l
    ocal/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O
    -DVERSION=\"2.9008\" -DXS_VERSION=\"2.9008\" -fPIC "-I/opt/
    perl/lib/5.8.7/PA-RISC2.0/CORE" dbdimp.c
    gcc: +DAportable: No such file or directory
    *** Error exit code 1

    Stop.

    ================================================== ========================================

    ================================================== ========================================
    DBD-Mysql-2.9008 Perl module Build in HP-UX 11.11 using HP C
    compiler (cc)
    ================================================== ========================================


    # perl Makefile.PL CC=cc
    I will use the following settings for compiling and testing:

    cflags (mysql_config) =
    -I/cmdisk1/mysql-max-4.1.12-hp-hpux11.11-hppa2.0w/include +DAportable
    libs (mysql_config) =
    -L/cmdisk1/mysql-max-4.1.12-hp-hpux11.11-hppa2.0w/lib -lmysqlclient -lz
    -lcrypt -lnsl -lm
    mysql_config (guessed ) = mysql_config
    nocatchstderr (default ) = 0
    nofoundrows (default ) = 0
    ssl (guessed ) = 0
    testdb (default ) = test
    testhost (default ) =
    testpassword (default ) =
    testsocket (default ) =
    testuser (default ) =

    To change these settings, see 'perl Makefile.PL --help' and
    'perldoc INSTALL'.

    Checking if your kit is complete...
    Looks good
    Note (probably harmless): No library found for -lz
    Using DBI 1.48 (for perl 5.008007 on PA-RISC2.0) installed in
    /opt/perl/lib/site_perl/5.8.7/PA-RISC2.0/auto/DBI/
    Writing Makefile for DBD::mysql
    # make
    cp lib/DBD/mysql.pm blib/lib/DBD/mysql.pm
    cp lib/DBD/mysql/GetInfo.pm blib/lib/DBD/mysql/GetInfo.pm
    cp lib/Mysql.pm blib/lib/Mysql.pm
    cp lib/DBD/mysql/INSTALL.pod blib/lib/DBD/mysql/INSTALL.pod
    cp lib/Mysql/Statement.pm blib/lib/Mysql/Statement.pm
    cp lib/Bundle/DBD/mysql.pm blib/lib/Bundle/DBD/mysql.pm
    cc -c -I/opt/perl/lib/site_perl/5.8.7/PA-RISC2.0/auto/DBI/
    -I/cmdisk1/mysql-max-4.1.12-hp-hpux11.11-hppa2.0w/include +DAportable

    -DDBD_MYSQL_INSERT_ID_IS_GOOD -g -mpa-risc-2-0 -D_HPUX_SOURCE
    -DDEBUGGING -fno-strict-aliasing -pipe -I/pro/local/include

    -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O
    -DVERSION=\"2.9008\" -DXS_VERSION=\"2.9008\" -fPIC

    "-I/opt/perl/lib/5.8.7/PA-RISC2.0/CORE" dbdimp.c
    (Bundled) cc: warning 480: The -g option is available only with the
    C/ANSI C product; ignored.
    (Bundled) cc: warning 422: Unknown option "m" ignored.
    (Bundled) cc: warning 480: The -p option is available only with the
    C/ANSI C product; ignored.
    (Bundled) cc: warning 422: Unknown option "a" ignored.
    (Bundled) cc: warning 422: Unknown option "-" ignored.
    (Bundled) cc: warning 480: The -r option is available only with the
    C/ANSI C product; ignored.
    (Bundled) cc: warning 422: Unknown option "i" ignored.
    (Bundled) cc: warning 422: Unknown option "-" ignored.
    (Bundled) cc: warning 422: Unknown option "2" ignored.
    (Bundled) cc: warning 422: Unknown option "-" ignored.
    (Bundled) cc: warning 422: Unknown option "0" ignored.
    (Bundled) cc: warning 422: Unknown option "f" ignored.
    (Bundled) cc: warning 480: The -p option is available only with the
    C/ANSI C product; ignored.
    (Bundled) cc: warning 422: Unknown option "i" ignored.
    (Bundled) cc: warning 480: The -p option is available only with the
    C/ANSI C product; ignored.
    (Bundled) cc: warning 480: The -e option is available only with the
    C/ANSI C product; ignored.
    (Bundled) cc: warning 480: The -g option is available only with the
    C/ANSI C product; ignored.
    (Bundled) cc: warning 480: The -O option is available only with the
    C/ANSI C product; ignored.
    (Bundled) cc: warning 422: Unknown option "f" ignored.
    cpp: "/opt/perl/lib/5.8.7/PA-RISC2.0/CORE/perlio.h", line 114: error
    4065: Recursion in macro "PerlIO".
    *** Error exit code 1

    Stop.
    #

    ================================================== ========================================


  2. Re: Mysql-DBD Perl module Installation Problem in HPUX

    smsabu2002@yahoo.com wrote:
    > Hi,
    >
    > I am facing the build problem while installing the DBD-MySql perl
    > module (ver 2.9008) using both GCC and CC compilers in HP-UX machine.
    >
    > For the Build using GCC, the compiler error is produced due to the
    > unknown GCC compiler option "+DAportable".


    This is a flag for the HP compiler; it is not understood by GCC.
    It's a flag to cause the compiler to produce code that works on both
    PA-RISC 2.0 and PA-RISC 1.1 architectures.

    I'd edit the generated Makefile to remove this flag from compile
    commands. That might be enough to get gcc to work.

    Perhaps it's picking up the flag from Perl's Config.pm. Try `perl -V'
    (that's capital V) to get more information about Perl's configuration
    for compiler options. You might have to edit your Config.pm to get rid
    of this, or else you'll run into this issue each time you install a Perl
    module that includes C code.

    > For the Build using CC, the preprocessor error is produced due to the
    > recursive declration of macro "PerlIO" in perlio.h file.


    You also have several GCC-specific flags that cause HP cc to complain,
    like -m and -f.

    It's desireable to compile the DBD-mysql extension with the same
    compiler and compiler options as those which were used to build the perl
    binary itself. Running `perl -V' should tell you what compiler was used
    to build perl. I'm guessing it was build with gcc, for the reason of
    the macro in perlio.h.

    Sorry I can't offer more definitive suggestions, but I don't use HP-UX
    much these days.

    Regards,
    Bill K.

+ Reply to Thread