lthemick
lthemick

Reputation: 318

Failures bulding Perl 5.32.1 on HP-UX (hpia11.31) - related to failed regex evaluations

I'm attempting to build Perl 5.32.1 on an hpia11.31 system and am getting what appear to be failures in regex evaluations. For instance, make_patchnum.pl fails because a regex intended to pull the filename from a heredoc instead returns the entire heredoc as the filename:

./miniperl -Ilib make_patchnum.pl
Failed to open for write './lib/Config_git.pl' is generated by make_patchnum.pl
#          DO NOT EDIT DIRECTLY - edit make_patchnum.pl instead
######################################################################
$Config::Git_Data=<<'ENDOFGIT';
git_commit_id=''
git_describe=''    
git_branch=''
git_uncommitted_changes=''
git_commit_id_title='':File name too long at make_patchnum.pl line 84.

Manually getting past that, configpm exhibits the same issue: regex evaluations to extract variable headers fail in 5.32.1 where they succeed in 5.28.1. Example:

Expected a Configure variable header, instead we got:
_exe (Unix.U):
    This variable defines the extension used for executable files.
    DJGPP, Cygwin and OS/2 use '.exe'.  Stratus VOS uses '.pm'.
    On operating systems which do not require a specific extension
    for executable files, this variable is empty.

I assume this is using the regexec.c built earlier in the build process, although I don't know that for certain. Tne regexec.c build reports some warnings, but they seem in line with warnings reported against 5.28.1: I don't see anything here that suggests it doesn't work.

Here's the build command for regexec.c:

cc -c -DPERL_CORE -D_POSIX_C_SOURCE=199506L -D_REENTRANT \
-Ae -Wp,-H150000 -D_HPUX_SOURCE -Wl,+vnocompatwarnings +DD64 \
-D_INCLUDE__STDC_A1_SOURCE -I/usr/local/include -D_LARGEFILE_SOURCE \
-D_FILE_OFFSET_BITS=64 +O2 +Onolimit regexec.c

Any ideas why the regex parser might behave differently on HP-UX from other platforms? I've successfully built 5.32.1 for x86 Linux, plinux, zlinux, rs6000, and Solaris, so this seems specific to HP-UX.

EDIT: compiler info

bash-4.0$ /opt/aCC/bin/cc --version
cc: HP C/aC++ B3910B A.06.20 [May 13 2008]

Upvotes: 1

Views: 114

Answers (1)

Tux
Tux

Reputation: 11

Which compiler is your cc? You require the ANSI-C compiler to be able to build perl on HP-UX

$ cc --version cc: HP C/aC++ B3910B A.06.28.02 [Mar 09 2016]

$ cc -V cc: HP C/aC++ B3910B A.06.28.02 [Mar 09 2016]

Upvotes: 1

Related Questions