This is a discussion on Mysql-DBD Perl module Installation Problem in HPUX within the HP-UX Operating System forums, part of the Unix Operating Systems category; --> Hi, I am facing the build problem while installing the DBD-MySql perl module (ver 2.9008) using both GCC and ...
| |||||||
| Register | FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| ||||
| 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. # ================================================== ======================================== |
| ||||
| 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. |