在AIX 6.1上为gcc编译的Perl V5.8.8失败

时间:2011-07-27 22:58:53

标签: perl aix

由于在尝试安装CPAN时出现了cc_r问题,我在AIX 6.1上编译了Perl V5.8.8。我们没有IBM C编译器,但使用gcc并且“成功编译”,我希望没有错误,运行make per:

make
    make depend MAKEDEPEND=
    sh ./makedepend MAKE=make
    sh writemain lib/auto/DynaLoader/DynaLoader.a  > perlmain.c
    echo  av.c scope.c op.c doop.c doio.c dump.c hv.c mg.c reentr.c perl.c perly.c pp.c pp_hot.c
pp_ctl.c pp_sys.c regcomp.c regexec.c utf8.c gv.c sv.c taint.c toke.c util.c deb.c run.c universal.c xsutils.c pad.c globals.c perlio.c perlapi.c numeric.c locale.c pp_pack.c pp_sort.c miniperlmain.c perlmain.c opmini.c | tr ' ' '\n' >.clist
Finding dependencies for av.o.
Finding dependencies for scope.o.
Finding dependencies for op.o.
Finding dependencies for doop.o.
Finding dependencies for doio.o.
Finding dependencies for dump.o.
Finding dependencies for hv.o.
Finding dependencies for mg.o.
Finding dependencies for reentr.o.
Finding dependencies for perl.o.
Finding dependencies for perly.o.
Finding dependencies for pp.o.
Finding dependencies for pp_hot.o.
Finding dependencies for pp_ctl.o.
Finding dependencies for pp_sys.o.
Finding dependencies for regcomp.o.
Finding dependencies for regexec.o.
Finding dependencies for utf8.o.
Finding dependencies for gv.o.
Finding dependencies for sv.o.
Finding dependencies for taint.o.
Finding dependencies for toke.o.
Finding dependencies for util.o.
Finding dependencies for deb.o.
Finding dependencies for run.o.
Finding dependencies for universal.o.
Finding dependencies for xsutils.o.
Finding dependencies for pad.o.
Finding dependencies for globals.o.
Finding dependencies for perlio.o.
Finding dependencies for perlapi.o.
Finding dependencies for numeric.o.
Finding dependencies for locale.o.
Finding dependencies for pp_pack.o.
Finding dependencies for pp_sort.o.
Finding dependencies for miniperlmain.o.
Finding dependencies for perlmain.o.
Finding dependencies for opmini.o.
echo Makefile.SH cflags.SH config_h.SH makeaperl.SH makedepend.SH  makedir.SH myconfig.SH writemain.SH pod/Makefile.SH | tr ' ' '\n' >.shlist
Updating makefile...
     test -s perlmain.c && touch perlmain.c
    cd x2p; make depend
    sh ../makedepend MAKE=make
    echo hash.c  str.c util.c walk.c | tr ' ' '\n' >.clist
Finding dependencies for hash.o.
Finding dependencies for str.o.
Finding dependencies for util.o.
Finding dependencies for walk.o.
    echo Makefile.SH cflags.SH | tr ' ' '\n' >.shlist
Updating makefile...
    `sh  cflags "optimize='-O'" miniperlmain.o`  miniperlmain.c
      CCCMD =  gcc -maix64 -DPERL_CORE -c -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -DUSE_NATIVE_DLOPEN -fno-strict-aliasing -pipe -Wdeclaration-after-statement -I/usr/local/include -maix64 -DUSE_64_BIT_ALL -O  -Wall
In file included from perl.h:496,
             from miniperlmain.c:36:
/usr/include/unistd.h:924: error: expected ')' before '[' token
/usr/include/unistd.h:925: error: expected declaration specifiers or '...' before 'rid_t'
make: 1254-004 The error code from the last command is 1.


Stop.

/usr/include/unistd.h中违规行的输出:

    extern int              setroles(rid_t [], int);
    extern int              getroles(pid_t, rid_t [], int);
"/usr/include/unistd.h" [Read only] The cursor is at line 924 of 966 --91%-- .

再一次,任何帮助都非常感谢......... LT

PS。虽然IBM表示在AIX 6.1上没有打包/支持Perl V5.10.x,但它实际上是否会正确运行?

1 个答案:

答案 0 :(得分:0)

除了当前版本的Perl之外,你不太可能得到适当的社区支持,截至2011年这意味着v5.14

#perl-help的意见:

<Khisanth> looks like some missing header files
<Khisanth> or missing #includes
<DrForr> Whatever defines rid_t is a likely candidate.